在RIDE我們可以發現,TestSuite中有Suite Setup、Suite Teardown、Test Setup與Test Teardwon,而TestCase中有Setup與Teardown。概念與JUnit相同,Test Suite中的Suite Setup與Suite Teardwon是在Test Suite要開始執行Testcases之前與執行各個Testcases結束後所做的動作;TestCase中的Setup與Teardown是在各個Testcase要開始前與結束後所做的動作。有疑問的是: Test Suite中的Test Setup與Test Teardown對TestCase中的有什麼影響呢?
我寫了一個測試用的testsuite叫TestTearDown,包含三個testcases: test1、test2與test3,兩個keywords: log teardown與log teardown2。其中teardown的關係如下:
TestTearDown - Test Teardown: log teardown test1 - Teardown: log teardown test2 - Teardown: log teardown2 test3
上面範例的目的,是要讓我們了解以下事情:
- Test Suite與Test Case的Test Teardown相同時,是否會執行兩次?
- Test Suite與Test Case的Test Teardown不同時,哪一個會被執行?
我們可以從結果發現: Test Suite中的Test Teardown是一個預設值,在Testcase沒設定時才會作用,否則都以testcase本身為準,不會讓Test Suite與Test Case都執行。
留言
張貼留言