from time import sleep
from appium import webdriver
import pytest class TestXueqiu: user_profile_id = "user_profile_icon"
login_more_id = "iv_login_more"
login_account_id = "login_account"
login_password_id = "login_password"
button_next_id = "button_next"
md_content_id = "md_content"
md_buttonDefaultPositive_id = "md_buttonDefaultPositive"
action_back_id = "iv_action_back"
buttonDefaultNegative_id = "md_buttonDefaultNegative"
action_back1_id = "action_back"
home_search_id = "home_search"
search_input_text_id = "search_input_text"
search_name_id = "name"
stockName_id = "stockName"
action_close_id = "action_close" def setup_class(self): caps = {}
caps["platformName"] = "Android"
caps["platformVersion"] = "8.1.0"
caps["deviceName"] = "60c106df0302"
caps["appPackage"] = "com.xueqiu.android"
caps["appActivity"] = ".view.WelcomeActivityAlias"
caps["noReset"] = True self.driver = webdriver.Remote("http://localhost:4723/wd/hub", caps)
self.driver.implicitly_wait(20) def test_wrong_phone(self): self.driver.find_element_by_id(self.user_profile_id).click()
self.driver.find_element_by_id(self.login_more_id).click()
login_account = self.driver.find_element_by_id(self.login_account_id)
login_account.clear()
login_account.send_keys("1311111111111111111")
login_password = self.driver.find_element_by_id(self.login_password_id)
login_password.clear()
login_password.send_keys("123456abc")
self.driver.find_element_by_id(self.button_next_id).click()
text = self.driver.find_element_by_id(self.md_content_id).get_attribute("text")
assert text == "手机号码填写错误"
self.driver.find_element_by_id(self.md_buttonDefaultPositive_id).click() def test_wrong_password(self):
login_account = self.driver.find_element_by_id(self.login_account_id)
login_account.clear()
login_account.send_keys("15958020294")
login_password = self.driver.find_element_by_id(self.login_password_id)
login_password.clear()
login_password.send_keys("123456abc111")
self.driver.find_element_by_id(self.button_next_id).click()
text = self.driver.find_element_by_id(self.md_content_id).get_attribute("text")
assert text == "用户名或密码错误"
self.driver.find_element_by_id(self.md_buttonDefaultPositive_id).click()
self.driver.find_element_by_id(self.action_back_id).click()
self.driver.find_element_by_id(self.buttonDefaultNegative_id).click()
self.driver.find_element_by_id(self.action_back1_id).click() @pytest.mark.parametrize(("search", "result"), [
("alibaba", "阿里巴巴"), ("xiaomi", "小米"), ("google", "谷歌")
])
def test_search(self, search, result):
self.driver.find_element_by_id(self.home_search_id).click()
self.driver.find_element_by_id(self.search_input_text_id).send_keys(search)
self.driver.find_elements_by_id(self.search_name_id)[0].click()
text = self.driver.find_elements_by_id(self.stockName_id)[0].get_attribute("text")
assert result in text
self.driver.find_element_by_id(self.action_close_id).click() def teardown_class(self):
sleep(5)
self.driver.quit()

  

第一个appium测试用例的更多相关文章

  1. Appium(四):真实机第一个appium程序、模拟器第一个appium程序、查看元素

    1. 真实机第一个appium程序 学完了前面的知识,也将环境搭建好了,接下来我们就正式开始appium的学习了. 在做app自动化的时候,我们肯定是针对某个产品.某个软件进行测试,那么我们一定是先让 ...

  2. appium学习【四】:第一个appium脚本

    #coding=utf-8 import os import HTMLTestRunner import unittest import time import sys from appium imp ...

  3. 一个appium 博客

    http://www.cnblogs.com/tobecrazy/category/699177.html appium Java控制Appium server start/stop 摘要: 相信很多 ...

  4. 第二章 mac上运行第一个appium实例

    一.打开appium客户端工具 1      检查环境是否正常运行: 点击左边第三个图标 这是测试你环境是否都配置成功了 2      执行的过程中,遇到Could not detect Mac OS ...

  5. 测试工具之Jmeter(创建一个简单测试用例)

    前面介绍了如何使用badboy录制jmeter脚本,以及如何导入脚本并进行测试 这里介绍下手动创建测试用例,主要步骤如下: 1.创建线程组 第一次打开Jmeter只有一个测试计划,右键“测试计划”选择 ...

  6. 第一个appium的Demo

    原文来自:一颗糖果  http://www.cnblogs.com/linglingyuese/articles/8418311.html 一.环境搭建 略(后期补) 二.创建一个测试apk包的项目 ...

  7. XMind2TestCase:一个高效测试用例设计的解决方案!

    一.背景 软件测试过程中,最重要.最核心就是测试用例的设计,也是测试童鞋.测试团队日常投入最多时间的工作内容之一. 然而,传统的测试用例设计过程有很多痛点: 1.使用Excel表格进行测试用例设计,虽 ...

  8. Python编写Appium测试用例(1)

    有段时间没有使用python编写测试用例了,很长时间以来,感觉appium这个测试工具确实不错,今天又重新拿起来,分享一下自己学习的一些用例,欢迎大家一起交流.学习! 1.登录客户端 #coding= ...

  9. Appium移动自动化测试-----(六)4.运行第一个Appium脚本

    新建maven空白工程 前置条件:安装eclipse或IntelliJ IDEA,及其maven插件,请自行百度 新建的工程如下: 新建目录apps,并将下载的安装包,拷贝到该目录下 打开POM增加依 ...

随机推荐

  1. Real Beauty真正的美丽

    [1]Beauty is only skin-deep. Physical beauty can only be held fleetingly. Real beauty is much deeper ...

  2. Django-admin站点管理的详细使用

    使用Django的管理模块,需要按照如下步骤操作: 管理界面本地化 创建管理员 注册模型类 自定义管理页面 1 管理界面本地化 在settings.py中设置语言和时区 LANGUAGE_CODE = ...

  3. NOIP_TG

    本博客主要记录一些在刷题的途中遇到的一些巧妙的题目 砝码称重 一开始想到可以DP递推标记能凑成的数量 但发现同一种砝码可能有多个于是想多开一维状态存当前还剩多少砝码 真是愚蠢至极 直接把所有砝码单独看 ...

  4. SpringBoot应用进阶

    一.表单验证 Controller接收一个对象数据的表单,如下: 需要对表单friend里的age属性做一个限制,如下 第一个是最小值,第二个是出错时报的错误信息 怎么知道验证结果呢?如下: 二.AO ...

  5. Python_生成随机验证码

    内置函数 chr() ord() 这两个内置函数是用来对十进制(十六进制也可以)与ASCii之间进行转换 chr() : 将十进制转换成ASCii对应字母或符号 t_1 = chr(99) t_2 = ...

  6. 安装VMware Tools显示灰色正确解决办法

    首先问题如下: 解决办法如下:1.关闭虚拟机: 2.在虚拟机设置分别设置CD/DVD.CD/DVD2和软盘为自动检测三个步骤: 3.再重启虚拟机,灰色字即点亮. 大功告成,如果解决了你的问题,点个赞鼓 ...

  7. PHP range

    1.函数的作用:生成范围内的数据 2.函数的参数: @param mixed $start @param mixed $end @param mixed $step 3.例子: <?php $n ...

  8. macbook使用美化工具在屏幕展示出常查信息

    磕叨 凭本人自己的经验,写代码过程中要经常查看内存使用网络流量下等,所以经常用到命令去查,而且mac上的命令跟linux上又有些不一样,经常打错. 多年前还没用mac前我用的是ubnutu,那时还是1 ...

  9. NOIP2009 Hankson 的趣味题 : 数论

    题目描述 Hanks 博士是 BT (Bio-Tech,生物技术) 领域的知名专家,他的儿子名叫 Hankson.现在,刚刚放学回家的 Hankson 正在思考一个有趣的问题. 今天在课堂上,老师讲解 ...

  10. windows下cmd组合命令和管道命令

    组合命令:&& 管道命令:|