大多數時候,我們都是通過Eclipse IDE上的操作命令來執行testng 框架下的case 運行。那如果我們不想通過這種方式,而是想通過代碼調用來實現執行該怎么辦?下面是我搜集的兩種方式供大家參考,兩種方式都是使用TestNG 類里的方法
1. 通過testNG 類的testNG.setTestClasses添加需要執行的case 類名,然后調用testNG.run()方法
TestNG testNG = new TestNG();
testNG.setTestClasses(new Class[]{xxx.class,yyy.class});
testNG.run();
2. 通過testNG 類的testNG.setTestSuites添加需要執行的suites 名(也就是testng.xml文件名),然后調用testNG1.run()方法
TestNG testNG = new TestNG();
List<String> suites = new ArrayList<String>();
suites.add(suite.getSuiteName());
testNG.setTestSuites(suites);
testNG.run();
是不是很簡單?
在我的實際項目中,我會配合MVC框架結構一起使用,用java swing做一個小操作界面,方式一個小button. 把上面代碼放到按鈕的click 事件中,就可以run起來了。另外MVC框架整合到我們的自動化測試框架中,也有很多好處,比如操作起來更友好,可以把一些相關配置過程放到里面用界面的形式來做配置,也可以做上log, report功能,做一個樹形結構放case,選擇case來執行,做一個比suite高一級的多線程模擬持續集成工具能做的事情,等等。有興趣的朋友可以研究研究哦
