如何使用SeleniumJava在同一台机器上并行运行方法或类
我是selenium新手,我希望同时运行两个类或两个方法,而不是一个接一个地运行。我引用了很多链接,但都是徒劳的。下面是我的testing.xml代码(用于测试方法),其中如何使用SeleniumJava在同一台机器上并行运行方法或类,java,selenium,selenium-webdriver,selenium-grid,Java,Selenium,Selenium Webdriver,Selenium Grid,我是selenium新手,我希望同时运行两个类或两个方法,而不是一个接一个地运行。我引用了很多链接,但都是徒劳的。下面是我的testing.xml代码(用于测试方法),其中testStageDashboard和prodDashboards1是单个类中的测试方法: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd"> <s
testStageDashboard
和prodDashboards1
是单个类中的测试方法:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Parallel test suite" parallel="methods" thread-count="2">
<test name="Test 1">
<classes>
<class name="com.sd.selenium.FirstTestSelenium" />
<!-- <class name="com.sd.selenium.practice.Monday_Test_Selenium_Till_Scrum_Call"
/> -->
</classes>
</test>
</suite>
xml(用于测试类):
其中
FirstTestSelenium
和Monday\u Test\u Selenium\u Till\u Scrum\u Call
是不同包下的两个不同类。我需要为浏览器节点或其他东西编写java代码吗?如何运行这个?我所做的是右键单击我的项目并以>Test NG Test的方式运行。还需要什么吗?提前感谢:)检查是否为类/方法添加了@Test注释,并将浏览器详细信息指定为测试参数。下面是示例testng.xml文件
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite" parallel="classes" thread-count="2">
<test name="Test">
<parameter name="myName" value="Test1"></parameter>
<parameter name="browserType" value="chrome"></parameter>
<parameter name="os" value="WINDOWS"></parameter>
<classes>
<class name="com.testng.session1.Session1" />
<class name="com.testng.session1.Session2" />
</classes>
</test> <!-- Test -->
</suite> <!-- Suite -->
}下面是与两个线程并行运行方法的代码 测试类:
package com.sd.selenium;
import org.testng.annotations.Test;
public class FirstTestSelenium {
@Test
public void test1(){
System.out.println("method1");
}
@Test
public void test2(){
System.out.println("method2");
}
}
Testng.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Parallel test suite" parallel="methods" thread-count="2">
<test name="Test 1">
<classes>
<class name="com.sd.selenium.FirstTestSelenium" />
<!-- <class name="com.sd.selenium.practice.Monday_Test_Selenium_Till_Scrum_Call"
/> -->
</classes>
</test>
</suite>
如果您遇到任何异常,请告诉我。是的,它工作得很好,但还有一个附加功能是,我们需要将testng.xml放在src文件夹中,并仅以TestNgSuite的形式运行您的项目。我还需要方法。您能帮我吗?为您希望并行运行的所有方法以及上面的testng.xml文件添加@Test注释,只需改变“方法”的平行性。这对你有用。我们不需要在TestNg.xml文件中提到方法,而且它取决于线程数。如果你提到2,每次只有2个线程并行执行。这不起作用。我需要同时运行两个方法。我已经为方法编辑了testng.xml代码。请看一眼:)您已经编辑了并行方法,那么您的类“FirstTestSelenium.java”文件呢?是否为所有方法添加了@Test注释?另外,请您提供您得到的确切错误。
package com.sd.selenium;
import org.testng.annotations.Test;
public class FirstTestSelenium {
@Test
public void test1(){
System.out.println("method1");
}
@Test
public void test2(){
System.out.println("method2");
}
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Parallel test suite" parallel="methods" thread-count="2">
<test name="Test 1">
<classes>
<class name="com.sd.selenium.FirstTestSelenium" />
<!-- <class name="com.sd.selenium.practice.Monday_Test_Selenium_Till_Scrum_Call"
/> -->
</classes>
</test>
</suite>