selendroid自动化环境安装和官方demo测试(python版本)

来源:互联网 发布:外资企业的利润数据 编辑:程序博客网 时间:2024/06/06 01:04

一、环境准备:

1、python2.7.10安装,可以下载ActivePython ,已集成setuptool和pip、virtualenv等包。

下载地址:http://www.activestate.com/activepython/downloads

2、selenium安装,直接pip install selenium

3、selendroid官网(http://selendroid.io/)下载最新的,JAR包和测试用的APK包


二、开启selendroid服务
1.在命令行切换到刚下载的selendroid-standalone.jar目录下,这那个目录下同时存在刚下载的selendroid-test-app.apk
执行命令(版本号自行替换,最好把此命令保存成bat脚本,以后只要点击运行就可以。):
java -jar selendroid-standalone-0.17.0-with-dependencies.jar -app selendroid-test-app-0.17.0.apk

命令行底端出现以下日志,代表开启成功
selendroid-standalone server has been started on port: 4444

2.打开浏览器输入链接http://localhost:4444/wd/hub/status
页面返回

{"status":0,"value":{"supportedApps":[{"appId":"io.selendroid.androiddriver:0.17.0","mainActivity":"io.selendroid.androiddriver.WebViewActivity","basePackage":"io.selendroid.androiddriver"},{"appId":"io.selendroid.testapp:0.17.0","mainActivity":"io.selendroid.testapp.HomeScreenActivity","basePackage":"io.selendroid.testapp"}],"os":{"arch":"amd64","name":"Windows 7","version":"6.1"},"build":{"browserName":"selendroid","version":"0.17.0"},"supportedDevices":[{"screenSize":"(240, 400)","platformVersion":"19","emulator":true,"avdName":"4.4"}]}}

说明服务已经开启。而且页面上的supportedDevices设备池会添加你电脑上的模拟器和连接的真机。


三、编写脚本用例

pycharm里新建一个文件,拷贝以下官方demo测试代码

'''@author: Dominik Dary'''import unittestfrom selenium import webdriverclass FindElementTest(unittest.TestCase):    def setUp(self):        desired_capabilities = {'aut': 'io.selendroid.testapp:0.17.0'}        self.driver = webdriver.Remote(            desired_capabilities=desired_capabilities        )        self.driver.implicitly_wait(30)    def test_find_element_by_id(self):        self.driver.get('and-activity://io.selendroid.testapp.HomeScreenActivity')        self.assertTrue("and-activity://HomeScreenActivity" in self.driver.current_url)        my_text_field = self.driver.find_element_by_id('my_text_field')        my_text_field.send_keys('Hello Selendroid')        self.assertTrue('Hello Selendroid' in my_text_field.text)    def tearDown(self):        self.driver.quit()if __name__ == '__main__':    unittest.main()

脚本在debug 模式下才能打开inspector,然后浏览器中打开链接http://localhost:4444/inspector,可以正确定位元素使用了。


四、运行脚本
先要打开安卓模拟器,测试用的apk包不一定要安装,如果已经安装了,脚本会自动卸载,再重新安装的。

然后运行脚本即可。




0 0