我正在为一个Android应用程序编写一个测试类,但我不断收到错误代码“项目未生成,因为它的构建路径不完整。找不到org.openqa.selenium.html5.BrowserConnection的类文件。修复构建路径,然后尝试构建这个项目。”每次我都尝试将selenium Android驱动程序jar文件添加到项目中。我需要Android驱动程序正确使用带有Appium的TestNG,否则Appium在测试时无法在页面上找到元素。代码:
package appiumTest;
import java.net.MalformedURLException;
import java.net.URL;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.android.*;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.annotations.*;
public class TestCase {
public class NewTest {
WebDriver driver = new AndroidDriver();
@BeforeClass
protected void setUp() throws MalformedURLException {
//Tells the program what device is used
DesiredCapabilities capabilities = new
DesiredCapabilities();
capabilities.setCapability("BROWSER_NAME", "Android");
capabilities.setCapability("VERSION", "4.2.2");
capabilities.setCapability("deviceName","Emulator");
capabilities.setCapability("platformName","Android");
//Tells the program what app is being run
capabilities.setCapability("appPackage",
"com.android.testapp2");
capabilities.setCapability("appActivity",
"com.android.testapp2.MainActivity ");
driver = (AndroidDriver) new RemoteWebDriver(new
URL("http://127.0.0.1:4723/wd/hub"), capabilities);
}
@Test
public void test() {
WebElement userName = driver.findElement(By.id("txtUserName"));
userName.sendKeys("a");
WebElement button = driver.findElement(By.id("btnEnter"));
button.click();
};
@AfterClass
protected void tearDown() throws Exception {
driver.quit();
}
}
}
下面是我试图编辑的pom.xml文件的代码:
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>TestProject</groupId>
<artifactId>TestProject</artifactId>
<version>0.0.1-SNAPSHOT</version>
<build>
<sourceDirectory>src</sourceDirectory>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<source/>
<target/>
</configuration>
</plugin>
</plugins>
</build>
</project>
我看不出有什么地方可以放置依赖关系,我甚至不确定这是不是我应该做的。
好吧,我想这会让你重新开始的。
pom.xml
中的改进:
>
没有定义的依赖项,因此添加了所需的onces
改进了
和
,它们是标准的小写,应该代表一些逻辑上唯一的东西。也许您将项目存储在bitbucket或github上,那么逻辑组id将以com.github.
开头。
已删除
Maven项目文件pom.xml
:
下面的注释是显示的正确的Maven起始标记
,因为它应该在pom.xml
中使用。但StackOverflow不会正确显示。
project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
下面是更正的pom.xml
,但没有正确的开始标记。
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>org.organisation.project</groupId>
<artifactId>android-selenium</artifactId>
<version>0.1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.9.8</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<!--
<version>2.48.2</version>
-->
<version>2.39.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-android-driver</artifactId>
<version>2.39.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<source />
<target />
</configuration>
</plugin>
</plugins>
</build>
</project>
类TestCase
中的改进:
newtest
,因此将其删除。驱动程序
的初始化,因为它是在@BeforeClass
方法中初始化的。@AfterClass
中添加了检查,仅在驱动程序初始化时调用driver.quit()
。类TestCase
:
package appiumTest;
import java.net.MalformedURLException;
import java.net.URL;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.android.*;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.annotations.*;
public class TestCase {
WebDriver driver; // = new AndroidDriver();
@BeforeClass
protected void setUp() throws MalformedURLException {
// Tells the program what device is used
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("BROWSER_NAME", "Android");
capabilities.setCapability("VERSION", "4.2.2");
capabilities.setCapability("deviceName", "Emulator");
capabilities.setCapability("platformName", "Android");
// Tells the program what app is being run
capabilities.setCapability("appPackage", "com.android.testapp2");
capabilities.setCapability("appActivity",
"com.android.testapp2.MainActivity");
driver = (AndroidDriver) new RemoteWebDriver(new URL(
"http://127.0.0.1:4723/wd/hub"), capabilities);
}
@Test
public void test() {
WebElement userName = driver.findElement(By.id("txtUserName"));
userName.sendKeys("a");
WebElement button = driver.findElement(By.id("btnEnter"));
button.click();
};
@AfterClass
protected void tearDown() throws Exception {
if (driver != null) {
driver.quit();
}
}
}
可能的改进
appiumtest
),但它不是与命名约定内联的,都是小写,用点.
分隔。和有意义的内容,类似于Maven group-id。Sp以com.github.
.
TestCase
类取一个更好的名称关于在Selenium 2.4.2中添加以下代码 System.SetProperty(“webdriver.chrome.driver”,“d:/chromedriver_win32//chromedriver.exe”);WebDriver驱动程序=新ChromeDriver(); chrome窗口被打开,但“一些黄色警告消息显示为”-您正在使用一个不支持的命令行标志:--忽略-证书-错误。稳
我正在构建一个java服务器程序,该程序使用JDBC驱动程序连接到psql数据库。我需要在。jar文件中编译程序,但是当我尝试这样做并运行它时,我得到了这个异常。(程序必须在linux机器上运行) java.lang.ClassNotFoundException:org.PostgreSQL.Driver at java.net.urlClassLoader.findClass(URLClassL
我正在开发一个java web应用程序,它使用Jasper report来显示一些报表。现在我的版本发生了一些变化,我得到了以下错误: 我认为错误可能是由于构建路径造成的。这是我的依赖树: 你能给我一些关于这个错误的建议吗?
我做了一个名为诊所的项目,它有3个jframe 登录 它连接到Access数据库(.mdb)。 我将其转换为JAR文件,但它给我的错误,它没有连接到UCanAccess驱动程序。 我甚至尝试了SQLite管理器,但也有同样的问题。我使用的是netbean 8。我只是直接选择了清洁和构建选项来制作jar文件。希望这能有所帮助。
我也检查了不同的MacBook,但它工作正常,它启动了浏览器 这里是代码和一些SS。 线程“main”java.lang.noClassDeffounder中的异常错误:org/openqa/selenium/firefox/firefoxdriver at com.pack.textboxdemo.main(textboxdemo.java:16)由:java.lang.classnotfoun
问题内容: 我正在尝试通过Laravel与PostgreSQL数据库进行连接,以进行php artisan迁移,但由于它正在读取MySQL的数据库名称,因此似乎没有针对性。 以下是来自database.php的命令: 如果删除MySQL路径,则会得到: 编辑: 尝试进行php artisan迁移时,我得到一个’PDOException:找不到驱动器’。我正在使用WAMP,并且在Win8.1中。使用