appium+python+unittest+HTMLRunner登录自动化测试报告
环境搭建
python3
Java JDK
.netFramework
nodejs
android SDK
appium
Appium-Python-Client(pip install Appium-Python-Client)
连接设备
cmd打开命令行窗口
输入adb connect 127.0.0.1:62001连接模拟器
输入adb shell dumpsys window windows | findstr "Current"获取当前包名
启动appium
常用元素定位
driver.find_element_by_id
driver.find_element_by_class
driver.find_element_by_name
driver.find_element_by_xpath(//*[@text=‘text属性’])
编写登录脚本
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from appium import webdriver
import unittest
import time desired_caps = {
'platformName': 'Android',
'platfromVersion': '5.1',
'deviceName': '127.0.0.1:62001',
'appPackge': 'com.xxxx.artstation',
'appActivity': 'com.xxxx.artstation.main.login.activity.LoginActivity'
} # TestCase类,所有测试用例继承的基本类
class LoginTest(unittest.TestCase):
# 测试前执行的初始化工作
def setUp(self):
self.driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps) # 测试用例执行后的善后工作。如关闭数据库连接,退出应用。无论写在哪,最后一个执行
def tearDown(self):
self.driver.quit() # 测试用例,必须以test开头
def test_login(self): self.driver.find_element_by_id('com.xxxx.artstation:id/tv_sure').click()
time.sleep(3) # 输入账号密码
self.driver.find_element_by_id(
'com.xxxx.artstation:id/clear_edittext_username').send_keys('158xxxxxxxx')
self.driver.find_element_by_id(
'com.xxxx.artstation:id/clear_edittext_password').send_keys('') # 点击登录按钮
self.driver.find_element_by_id(
'com.xxxx.artstation:id/tv_login').click
time.sleep(3)
自动生成测试报告
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import HTMLTestRunner
import unittest
from testcase import test_login if __name__ == '__main__':
# 实例化测试套件,定义一个测试容器
suite = unittest.TestSuite()
# 加载测试用例
suite.addTest(test_login.LoginTest('test_login')) # 使用discover方法批量加载运行测试用例
# suite= unittest.defaultTestLoader.discover('../testcase','test_*.py')
# runner = unittest.TextTestRunner() # 定义测试报告存放路径和报告名称
with open('HTMLReropt.html', 'wb')as f:
runner = HTMLTestRunner.HTMLTestRunner(
stream=f,
verbosity=2,
title='XX登录自动化测试报告',
description='执行人:嘻嘻'
)
runner.run(suite) # 关闭测试报告
f.close()

马蜂窝怎么增加粉丝 http://blog.sina.com.cn/s/blog_184e9f38b0102yyi5.html 马蜂窝游记推广 https://tieba.baidu.com/p/6427032866
appium+python+unittest+HTMLRunner登录自动化测试报告的更多相关文章
- appium+python+unittest+HTMLRunner编写UI自动化测试集
简介 获取AppPackage和AppActivity 定位UI控件的工具 脚本结构 PageObject分层管理 HTMLTestRunner生成测试报告 启动appium server服务 以py ...
- Appium python unittest pageobject如何实现加载多个case
学习了Appium python项目施展的课程小伙伴都会有一个疑问,说现在所有的case都是通过一个suite进行一个方法一个方法进行添加的,但是在实际过程中我们不希望这样,我们做出来的功能是这样: ...
- [python]Appium+python +pytest 实现APP自动化,基于安卓
1.安卓环境搭建 &关于app自动化,个人觉得安装过程比较复杂,脚本难度实现和web自动化差不多封装关键字即可,因此,下面会写安装.启动APP以及过程中遇到的一些坑(这一篇偏向解释给个人) & ...
- appium+python+unittest 测试用例的几种加载执行方式
利用python进行测试时,测试用例的加载方式有2种: 一种是通过unittest.main()来启动所需测试的测试模块: 一种是添加到testsuite集合中再加载所有的被测试对象,而testsu ...
- Python HTMLTestRunner生成网页自动化测试报告时中文编码报错UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6
1. 由于使用Python Selenium做网页自动化测试时,有截取网页上的中文信息保存到测试结果中,最终出现编码错误如下: File "D:/PycharmProjects/AutoTe ...
- Appium python自动化测试系列之自动化截图(十一)
11.1 截图函数的正常使用 11.1.1 截图方法 无论是在手动测试还是自动化测试中场景复现永远是一个很重要的事情,有时候一些问题可能很难复现,这个都需要测试人员对bug有很高的敏感度,在一般的情况 ...
- (appium+python)UI自动化_08_unittest编写测试用例
前言 unittest是python自带的单元测试框架,类似于Junit(Java单元测试框架).支持自动化测试,可编写测试前置&后置条件,并且可批量运行测试用例并生成测试报告. 使用unit ...
- 接口自动化-python unittest+requests+HTMLrunner
从2015年毕业入行软件测试,快满4年了,之前技术分享都在百度贴吧上面,现在正式开始在博客中记录工作技术,努力成长,加油 接口测试的步骤1.组装好该接口需要的参数数据2.使用get或post附带参数数 ...
- (appium+python)UI自动化_09_unittest批量运行测试用例&生成测试报告
前言 上篇文章[(appium+python)UI自动化_08_unittest编写测试用例]讲到如何使用unittets编写测试用例,并执行测试文件.接下来讲解下unittest如何批量执行测试文件 ...
随机推荐
- Beta版本
Beta版本 博客说明 这个作业属于哪个课程 http://edu.cnblogs.com/campus/xnsy/GeographicInformationScience 这个作业的要求在哪里 ht ...
- SpringDataRedis入门到实战
1.项目常见问题思考 对于电商系统的广告后台管理和广告前台展示,首页每天有大量的人访问,对数据库造成很大的访问压力,甚至是瘫痪.那如何解决呢?我们通常的做法有两种:一种是数据缓存.一种是网页静态化.我 ...
- 小白学Java:RandomAccessFile
目录 小白学Java:RandomAccessFile 概述 继承与实现 构造器 模式设置 文件指针 操作数据 读取数据 read(byte b[])与read() 追加数据 插入数据 小白学Java ...
- Linux 常用工具openssh之ssh-agent
前言 ssh-agent命令是一种控制用来保存公钥身份验证所使用的私钥的程序.ssh-agent在X会话或登录会话之初启动,所有其他窗口或程序则以客户端程序的身份启动并加入到ssh-agent程序中. ...
- Jutil 单元测试
eclipse 自身集成了jtuil,右击项目,点击bulidpath,addjar,如下所示添加jutil 新建一个Junit的测试类用来测试上面的测试方法,新增Junit的测试类方法如下: // ...
- k8s注册节点提示Docker SystemdCheck]: detected cgroupfs" as the Docker cgroup dr iver. The r ecommended dr fiver is" systemd"
本篇就不长篇大论了,直接附上解决办法 提示如上,此提示非必要要求,只是建议,但是看着不爽,那就解决它 这是未解决之前的docker信息,现在输入下面的指令 sudo echo -e "{\n ...
- C#系列之圣诞树代码(五)
马上就到圣诞节啦,这里我写啦一个最简单的圣诞树代码 Console.WriteLine("请输入您需要的圣诞树的大小<数字>"); int n = int.Parse( ...
- java刷题(1-5)
第一题:在一个数组中找出三个数相加之和为0,且不重复的集合 import java.lang.reflect.Array; import java.security.PublicKey; import ...
- 手把手实操教程!使用k3s运行轻量级VM
前 言 k3s作为轻量级的Kubernetes发行版,运行容器是基本功能.VM的管理原本是IaaS平台的基本能力,随着Kubernetes的不断发展,VM也可以纳入其管理体系.结合Container和 ...
- An internal error occurred during: "Launching New_configuration". Path for project must have only on
在Eclipse中按照如下操作 Project -> Properties -> Run/Debug Settings: 1. select "Launching New_con ...