首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >连接到127.0.0.1:4723 [/127.0.0.1]失败:连接被拒绝:连接

连接到127.0.0.1:4723 [/127.0.0.1]失败:连接被拒绝:连接
EN

Stack Overflow用户
提问于 2017-01-09 12:27:49
回答 1查看 9.6K关注 0票数 1

我正在尝试编写我的第一个测试。

每次运行代码时,都会出现以下错误:

代码语言:javascript
复制
org.openqa.selenium.WebDriverException: org.apache.http.conn.HttpHostConnectException: Connect to 127.0.0.1:4723 [/127.0.0.1] failed: Connection refused: connect  
....  
at MyFirstTest.setupTest(MyFirstTest.java:52)  
Caused by: org.apache.http.conn.HttpHostConnectException: Connect to 127.0.0.1:4723 [/127.0.0.1] failed: Connection refused: connect  
at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:158)  
at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:353)  

这是我的代码:

代码语言:javascript
复制
public class MyFirstTest  
{  
    public AppiumDriver<MobileElement> driver;  
    public WebDriverWait wait;  
    String usersEmail = "xxxx@gmail.com";  
    String userPassword = "aaaaaa";  

    public void login() throws InterruptedException  
    {  
        WebElement email = driver.findElement(By.xpath("//android.widget.EditText[contains(@text,'Enter Email')]"));  
        email.sendKeys(usersEmail);  
        Sleeper.SYSTEM_SLEEPER.sleep(new Duration(1000, TimeUnit.MILLISECONDS));  
        driver.findElement(By.xpath("//android.widget.RelativeLayout[contains(@resource-id,'edtPassword')]//android.widget.EditText[contains(@resource-id,'edtText')]")).sendKeys(userPassword);  
    driver.findElement(By.xpath("//android.widget.Button[contains(@resource-id,'btnLogin')]")).click();  
    }  
    @Before  
    public void setupTest() throws Exception  
    {  
        DesiredCapabilities capabilities = new DesiredCapabilities();  
        capabilities.setCapability("platormName", "Android");  
        capabilities.setCapability("deviceName", "Redmi");  
        capabilities.setCapability("appPackage","com.ls.stockpair");  
        capabilities.setCapability("appActivity","com.ls.stockpair.activity.SplashActivity");  
        driver = new AndroidDriver<MobileElement>(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);  
        Thread.sleep(8000);  
    }  
    @Test  
    public void go() throws InterruptedException  
    {  

    WebElement email = driver.findElement(By.xpath("//android.widget.EditText[contains(@text,'Enter Email')]"));  
    email.sendKeys(usersEmail);  
    Sleeper.SYSTEM_SLEEPER.sleep(new Duration(1000, TimeUnit.MILLISECONDS));  
    driver.findElement(By.xpath("//android.widget.RelativeLayout[contains(@resource-id,'edtPassword')]//android.widget.EditText[contains(@resource-id,'edtText')]")).sendKeys(userPassword);  
    driver.findElement(By.xpath("//android.widget.Button[contains(@resource-id,'btnLogin')]")).click();  

    Sleeper.SYSTEM_SLEEPER.sleep(new Duration(2000, TimeUnit.MILLISECONDS));  
        }  
}  

目前,在运行代码之前,我正在手动启动Appium。还试图从代码中启动Appium --这并没有帮助。

这段代码在我开始编写这段代码的第一天就起作用了,但不知为什么(我真的不知道为什么),它就停止工作了。

我在网上看到了很多关于这个问题的不同答案的问题,但到目前为止没有人帮助我。

我正在使用一个真正的Android设备,通过USB连接到我的Windows机器上。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-10 06:55:19

下面是最好的解决方案,您不需要每次都手动启动appium。

代码语言:javascript
复制
public static AndroidDriver<MobileElement> driver=null;
    public static AppiumDriverLocalService service=null;

    service = AppiumDriverLocalService.buildDefaultService();
    DesiredCapabilities capabilities = new DesiredCapabilities();  
    capabilities.setCapability("platormName", "Android");  
    capabilities.setCapability("deviceName", "Redmi");  
    capabilities.setCapability("appPackage","com.ls.stockpair");  
    capabilities.setCapability("appActivity","com.ls.stockpair.activity.SplashActivity");  

    service.start();
    driver = new AndroidDriver<MobileElement>(service, capabilities);

注意:如果您使用的是appium版本的1.5.3+,那么需要在环境变量.中设置APPIUM_BINARY_PATH。

例如APPIUM_BINARY_PATH=C:\Users\YourUserName\AppData\Roaming\npm\node_modules\appium\build\lib\main.js

有关如何设置APPIUM_BINARY_PATH的详细信息,请参阅下面的屏幕快照:

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41548086

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档