- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 selenium 和 testNG 在 eclipse 中执行 java 文件。我已将包名称从(默认包)更改为“内容”当我执行测试用例时,它会抛出以下错误,然后退出。
org.testng.TestNGException:
Cannot instantiate class content.AddContent
这是类(class)
public class AddContent {
private WebDriver driver;
String parentWindow = driver.getWindowHandle().toString();
//private String baseUrl;
//private StringBuffer verificationErrors = new StringBuffer();
@BeforeMethod
public void setUp(ITestContext context) throws Exception {
// String baseUrl = context.getCurrentXmlTest().getParameter("baseUrl");
driver = new FirefoxDriver();
//baseUrl = "http://mavrick.fhru.com";
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
}
@DataProvider
public Object[][] getData(){
Object[][] data = new Object[1][4];
data[0][0] = "http://mavrick.fhru.com";
data[0][1] = "superuser";
data[0][2] = "Ring123";
return data;
}
@Test (dataProvider="getData")
public void testAddContent(String baseUrl, String username, String password) throws Exception {
System.out.println("Going to the URL "+baseUrl);
driver.get(baseUrl);
Thread.sleep(500);
System.out.println("Checking for title...");
String rtitle = driver.getTitle();
String etitle = "Digital Servers";
try{
Assert.assertEquals(rtitle, etitle);
}catch(Throwable t){
System.out.println(" ERROR FOUND IN DS TITLE!! DS Login Page Title does not match");
System.out.println("Found "+rtitle+". Expected "+etitle);
System.out.println("The testcase will continue and will not be marked as failed.");
}
System.out.println("Maximizing the browser...");
driver.manage().window().maximize();
System.out.println("Entering "+username+" as Username...");
driver.findElement(By.id("username")).clear();
driver.findElement(By.id("username")).sendKeys(username);
System.out.println("Entering "+password+" as Password...");
driver.findElement(By.id("password")).clear();
driver.findElement(By.id("password")).sendKeys(password);
System.out.println("Clicking Sign in...");
driver.findElement(By.id("button")).click();
driver.findElement(By.id("contentImage")).click();
driver.findElement(By.id("bas")).click();
driver.switchTo().window("aapop");
driver.findElement(By.id("notselected")).click();
driver.findElement(By.id("url")).clear();
driver.findElement(By.id("url")).sendKeys("http://1.1.1.1/srsdsd/assests/ts1/gaming/");
driver.findElement(By.id("masks")).clear();
driver.findElement(By.id("masks")).sendKeys("*.mpeg");
//driver.findElement(By.className("ds_select_box")).click();
driver.findElement(By.xpath("//form[@id='subForm']/table/tbody/tr/td[2]/div/div/div")).click();
driver.findElement(By.xpath("//html/body/div/div[2]/div/div/div[2]/div/div/div[2]/form/table/tbody/tr/td[2]/div/div/ul/li[8]")).click();
//driver.findElement(By.tagName("Select")).click();
driver.findElement(By.xpath("//form[@id='subForm']/p[6]/div/div")).click();
driver.findElement(By.xpath("//html/body/div/div[2]/div/div/div[2]/div/div/div[2]/form/p[6]/div/ul/div/div/li[4]")).click();
//driver.findElement(By.xpath("//ul[@id='ul61']/li[8]")).click();
//driver.findElement(By.xpath("//ul[@id='ul87']/div/div/li[5]")).click();
//driver.findElement(By.id("ext-gen27")).click();
driver.findElement(By.xpath("//span[text() = 'Music']")).click();
driver.findElement(By.cssSelector("b")).click();
//driver.findElement(By.id("ext-gen46")).click();
driver.findElement(By.xpath("//tr/td[2]/em/button")).click();
driver.switchTo().window(parentWindow);
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
driver.findElement(By.id("ext-gen205")).click();
System.out.println("Completed adding all the Channels. Now will Signout from DS");
driver.findElement(By.linkText("Sign Out")).click();
Thread.sleep(200);
System.out.println("Closing the browser and finishing the testcase.");
System.out.println("========================================================================");
}
@AfterMethod
public void tearDown() throws Exception {
driver.quit();
//String verificationErrorString = verificationErrors.toString();
//if (!"".equals(verificationErrorString)) {
// fail(verificationErrorString);
//}
}
}
请帮忙。更改包名称是否需要遵循任何程序?
最佳答案
替换注释,
@BeforeMethod 与 @BeforeClass
和 @AfterMethod 与 @AfterClass
然后执行你的测试
关于java - 无法使用 TestNG 在 Selenium Eclipse 中实例化类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19679154/
我想多次运行一个测试用例。在testng.xml中可以配置吗?如果在测试方法中添加循环,则每次运行的结果将不会受到testng报告的影响。 最佳答案 您不能通过xml来执行此操作,但是可以在@Test
我在 TestNG 中尝试了一些使用硬断言和软断言的示例。虽然软断言按预期工作,但我遇到了硬断言的问题。 根据我从互联网上读到的信息-如果硬断言失败,它不会执行其他测试。 由于 ffPageEleme
我能够在 Eclipse 中完美地运行 testng。但是,我想使用命令行(Win 8)运行它,如不同论坛上所述。以下是我尝试处理错误的不同方法 - 1. java -cp "D:\testng\te
假设我有一个可以并行或串行执行的套件。但是,这样做的决定要留给运行时。启动此套件的常见方法如下: TestNG runner = new TestNG(); if (runInParallel())
如何获得执行TESTNG的方法所花费的时间? sample 测试: @Test(threadPoolSize = 100, invocationCount = 100) public void tes
我发现有一个选项可以通过surefire插件将参数设置为testng xml,然后可以从命令行发送参数。 [...] org.apache.maven.plug
我正在尝试使用这样的命令行运行 testng 测试: C:\Documents and Settings\Administrateur\Bureau\automatic tests testNG>ja
我正在尝试从我的套件文件中删除 testng 参数,因为它们在多个套件中都需要。例如,我有 2 个测试套件,upgrades.xml 和 features.xml。我创建了第三个文件,paramete
目标:并行独立运行 2 个类,其中每个测试将方法名称存储到一个变量中,该变量稍后可以在测试中访问。 问题:当测试并行运行时,它们开始在它们之间共享数据,从而破坏测试。 如果您看到控制台输出这是错误的:
好的,请引用 TestNG doc我可以运行测试 依次 (默认在测试套件中)或在 平行使用 . 现在这是我的 TestNG 配置
我正在尝试从命令行运行TestNG,但这给了我错误。 有人可以告诉我我要去哪里错吗? java -cp C:/TestNG目录/testng-6.2.jar;C:\project目录\src\com\
情况和问题 我有几个测试类,每个类都有几个测试方法。所有测试在后台使用相同的测试数据库。每个测试类初始化其数据库内容,然后在几个测试方法中测试内容。 当我单独运行每个测试时,它们都通过了。但是当我同时
如何让我的 TestNG 报告显示报告中控制台输出的链接?我以前见过 TestNG 这样做,但我现在正在做的一个项目没有显示任何输出,而且我在任何地方都找不到任何说明如何打开它的信息。我尝试在 tes
如果断言失败,如何在 TestNG 中继续执行测试?如何在 TestNG 的 HTML 报告中报告失败? 当我运行以下代码时,执行了断言之后的行,但在报告中未列出断言失败: @Test public
如果断言失败,如何在 TestNG 中继续执行测试?如何在 TestNG 的 HTML 报告中报告失败? 当我运行以下代码时,执行了断言之后的行,但在报告中未列出断言失败: @Test public
我在每个 wiki 使用 TestNG + ReportNG instructions在 gradle 中(我固定在食谱上,因为默认示例对我不起作用)。 我想以某种方式在 TestNG 中捕获控制台输
如何使用 TestNG 自动化功能测试,跨越多个 Java 进程? 我对尝试使用 TestNG 而不是 JUnit 产生了兴趣,因为它声称不仅仅是为单元测试而设计的,但我还没有找到具体的例子来说明如何
如何在测试用例的运行时获取当前正在运行的套件名称?我正在使用下面显示的代码来获取当前套件名称。 监听类: public class SuiteListener implements ISuiteLis
我正在使用 Selenium Webdriver 和 Java 设计一个用于测试的定制自动化框架。 现在出于报告的目的,我正在尝试将 TestNG 框架与我的项目集成。 现在我有一个基于 GUI 的界
出于某种原因,我必须使用旧的 TestNG 库,它没有 "getCurrentXmlTest()).getAllParameters()" API 我应该如何使用testng-5.4-jdk15.ja
我是一名优秀的程序员,十分优秀!