草庐IT

testng-dataprovider

全部标签

java - 执行 TestNG 测试时捕获 Log4j 输出

我正在执行TestNG测试,日志输出设置为DEBUG,因此如果出现故障,我可以检查到底出了什么问题。问题是输出非常冗长,运行起来很烦人。我想捕获所有Log4J日志记录事件——这很容易——并且只在测试失败时打印它们。此外,我需要考虑@Before/@After方法并为它们打印输出。假设我已经有一个Log4JLoggingEvent列表,我如何才能仅在Test/After/在方法失败之前? 最佳答案 使用Reporter.log(str)在报告中记录消息。@AfterMethodpublicvoidprintLOGonFailure(I

java - TestNG 使用多个 DataProvider 和单个测试方法

我一直在寻找一种在我的测试方法中使用多个DataProvider的方法。我的场景如下:假设我们有一个DataProvider类:@TestpublicclassExampleDataProvider{/***Returnsthelistofshapecodes.**@returnthecollectionshapecodes.*/@DataProvider(name="ShapeCodes")publicstaticObject[][]getShapeCodes(){returnnewObject[][]{newObject[]{Shape.Square},newObject[]{Sh

java - Gradle 编译但不运行 TestNG 测试

我们刚刚开始在我们的项目中使用Gradle和TestNG,所以我正在检查任何测试失败是否真的导致构建失败。我很惊讶地看到它没有。测试被正确提取和编译,所以我看到了类文件。我也确实得到了运行报告,但它说0次测试(预期2次)。运行gradlecleantest-i给我以下信息::contentplatform-service:compileTestJava(Thread[DaemonworkerThread7,5,main])started.:contentplatform-service:compileTestJavaExecutingtask':contentplatform-serv

java - 我们如何使用 selenium/TestNg 禁用 chrome 浏览器的网络安全

这个问题在这里已经有了答案:Chromeargumentsdoesn'twork(3个答案)关闭7年前。我想在代码中使用selenium/testng使用以下命令,因为每次执行代码时,webdriver都会创建一个新的浏览器实例默认启用哪个安全性。chrome.exe--disable-web-security

java - 将一种测试方法的输出传递给另一种方法testng

我必须在testng中编写以下单元测试用例:saveProductTest,如果产品详细信息成功保存在数据库中,它将返回productId。修改ProductTest,应该使用之前保存的productId作为参数。我正在使用testNg数据提供程序从XML文件中为saveProductTest和modifyProductTest方法获取产品详细信息输入(PrdouctName、ReleaseDate)。由于productId是在保存方法中生成的,因此我必须将其传递给修改方法。将一种测试方法的输出传递给testng中的另一种方法的最佳方法是什么。 最佳答案

java - 在 spring boot 中使用 testNG 进行单元测试需要时间来构建项目

我已经在spring-boot中创建了一个web应用程序。我正在用testNG为我的业务层编写单元测试。我已经创建了应用程序类@SpringBootApplicationpublicclassTestApplication{publicstaticvoidmain(String[]args){SpringApplication.run(TestApplication.class,args);}@BeanMappermapper(){ListmappingFiles=newArrayList();mappingFiles.add("dozer-mappings.xml");returnn

java - 从 IDE 中在远程服务器上运行 TestNG/JUnit 集成测试

在我的IDE(Eclipse或NetBeans,无关紧要)中,我有一些TestNG测试类(但我的问题还涉及远程JUnit测试),它们是集成测试。这些测试需要一个集成服务器来运行,它们不能在本地机器上运行。他们需要集成服务器的完整环境——不仅是JavaEE容器相关的东西(=>没有Arquillian也没有JEEUnit)。现在我希望能够从我的IDE(Eclipse)中运行这些测试-最好使用TestNG插件-但当我启动它们时,它们实际上应该在远程集成服务器上运行。是否可以从我的IDE中在远程服务器上启动集成测试?我喜欢在远程服务器上有某种代理等待测试请求并执行它们的想法。但正如我所说,如果

java - 如何以编程方式使用 TestNG 运行 Selenium Java 测试?

我将SeleniumRC与Java一起使用,并使用TestNG作为测试框架。我使用Eclipse作为IDE。我想很容易地从我自己的程序中调用TestNG。我该怎么做? 最佳答案 我在java中的以下代码运行良好:@TestpublicvoidtestTestNGProgramatically(){TestListenerAdaptertla=newTestListenerAdapter();TestNGtestng=newTestNG();testng.setTestClasses(newClass[]{LoginAuthentic

java - 在 TestNG 中关闭测试输出

我目前正在使用这个XML文件启动我的测试套件:我正在寻找一种方法来切断TestNG似乎默认执行的生成的测试输出文件夹。来自http://reportng.uncommons.org/我看得出来YoumayalsowanttodisablethedefaultTestNGreportersbysettingtheuseDefaultListenersattributeto"false".这似乎符合我的需要,难道他们的XML结构似乎与我的不同吗?有人知道如何使用TestNG关闭测试输出文件吗?谢谢 最佳答案 如您所说,只需使用此标志关闭

Java-TestNG : Why does my Assertion always passes when written within try-catch block

我正在尝试使用org.testng.Assert的简单代码来断言2个用例。在第一个用例中,我断言了2个不相等的值,它们Fail正确。但是在第二个用例中,当我在try-catchblock中断言2个不相等的值时,结果总是返回为Pass我的代码如下:packagedemo;importorg.testng.Assert;importorg.testng.annotations.Test;publicclassQ43710035{@Testpublicvoidtest1(){System.out.println("Withintest1");inta=12;intb=20;Assert.as