测试代码,虽然有点笨重,以后再修改: if __name__ == '__main__': report = os.path.join('D:/Python36/report/report.html') suite1 = unittest.TestSuite() suite1.addTests([TestStringMethods('test_split'),TestStringMethods('test_isupper'),TestStringMethods('test_upper')]) w…
前置步骤 Python版本:3.6.4 selenium版本:3.11.0 >>> import selenium >>> help(selenium) IDE:Pycharm 学习目的 掌握Python版本的selenium自动化技能,对所学的知识总结,可以作为日后工作的参考: 对学习的Python脚本编码能力再磨练,实战中学习: 为后续的跳槽作准备,说难听点,不会编码的测试,去哪都没啥竞争力 正式步骤 Step1:unittest框架中最核心的4个概念:test f…
FAQ: 情景:之前写好可以正常执行的python脚本,突然main函数下的代码不运行 原因:pycharm中,会设置py脚本按照unittest的方式运行,也就是只运行用例,不运行main函数下代码 解决方案: step1: 按alt+shift+F10或者点击截图中按钮 step2: 选择编辑结构 step3: 将不想按照unitest方式运行的用例 “-”掉即可 step4:点击保存 step5:run -> run 运行用例即可…
FAQ: 情景1: 设置等待时间 A方法:sleep 线程休眠,但只单次有效,其他操作需要加载等待时间,需要再次添加time.sleep() B方法:implicitly_wait() from selenium import webdriver import time dr = webdriver.Chrome() dr.get("https://www.baidu.com") dr.find_element_by_id("kw").send_keys("…
学习目的: 掌握python的基础应用 场景: 生成的测试日报需要加上时间戳作为唯一标志,免得文件覆盖,过往的文件丢失 因为os.rename方法要求文件名必须拼接的都是字符串 代码释义: # 日期转换为字符类型的时间 time1 = datetime.datetime.now() time_new = datetime.datetime.strftime(time1,"%Y-%m-%d-%H-%M-%S") print(time_new) print(type(time_new))…
学习目的: 了解WebDriver的高级应用 正式步骤: 测试Python3代码 # -*- coding:utf-8 -*- from selenium import webdriver from selenium.webdriver import ActionChains from selenium.webdriver.support.ui import Select from selenium.webdriver.common.keys import Keys from selenium.…
学习目的: 掌握页面元素定位以外的其他重要知识点. 正式步骤: 测试Python3代码 # -*- coding:utf-8 -*- from selenium import webdriver from selenium.webdriver import ActionChains from selenium.webdriver.support.ui import Select from selenium.webdriver.common.keys import Keys from seleni…
前置步骤: 安装selenium,chrome驱动,Python3.6 学习目的: 常见API的使用 涉及的API: step1: 访问一个网址 step2: 网页的前进和后退 step3: 刷新当前页面 step4: 浏览器窗口最大化 step5: 获取并设置当前窗口的位置 step6: 获取并设置当前窗口的大小 step7: 获取页面的title属性值 step8: 获取页面HTML源代码 step9: 获取当前页面的URL step10: 获取与切换浏览器窗口句柄 step11:获取页面元…
学习目的: 中级水平技术提升 在WebDriver脚本代码中执行JS代码,可以解决某些 .click()方法无法生效等问题 正式步骤: Python3代码如下 # -*- coding:utf-8 -*- from selenium import webdriver from selenium.webdriver import ActionChains from selenium.webdriver.support.ui import Select from selenium.webdriver…
前置步骤: 上一篇的Python单元测试框架unittest,我认为相当于功能测试测试用例设计中的用例模板,在自动化用例的设计过程中,可以封装一个模板,在新建用例的时候,把需要测试的步骤添加上去即可: 而现在要做的就是学习如何定位页面元素,告诉系统我要找到什么UI元素,然后才能进一步的采取其他措施: 其实不想写这篇内容,可是又觉得如果去官方文档找信息又效率慢,那么我就将常用的步骤归纳,那样可以快速查阅解决问题. 参考英文官方资料:http://selenium-python.readthedoc…
学习目的: 掌握WebDriver的高级应用 正式步骤: # -*- coding:utf-8 -*- from selenium import webdriver from selenium.webdriver import ActionChains from selenium.webdriver.support.ui import Select from selenium.webdriver.common.keys import Keys from selenium.common.excep…
学习目的: 掌握显示等待 掌握二次封装 正式步骤: step1:显示等待的代码示例 # -*- coding:utf-8 -*- from selenium import webdriver from selenium.webdriver.support.ui import WebDriverWait import time import os dr = webdriver.Chrome() url = 'http://renren.com/' dr.get(url) # dr 表示打卡浏览器…
学习目的: 掌握页面常规元素的定位方法 场景: 网页正常的select元素下拉框常规方法和select专属方法 正式步骤: step1:常规思路select页面元素定位 处理HTML代码截图 # -*- coding:utf-8 -*- from selenium import webdriver import time from selenium.webdriver.common.action_chains import ActionChains #常规select方法:百度首页设置搜索结果显…
学习目的: 掌握iframe矿建的定位,因为前端的iframe框架页面元素信息,大多时候都会带有动态ID,无法重复定位. 场景: 1. iframe切换 查看iframe 切换iframe 多个iframe的问题 2.多窗口iframe 获取句柄 切换句柄 正式步骤: step1: 如果iframe中含有动态ID的情况规避方法 问题截图 规避代码: # -*- coding:utf-8 -*- """ 模拟登陆126邮箱 """ from sel…
学习目的: xpath定位是针对常规定位方法中,最有效的定位方式. 场景: 页面元素的定位. 正式步骤: step1:常规属性 示例UI 示例UI相关HTML代码 相关代码示例: #通过id定位 dr.find_element_by_xpath('//*[@id="loginform-username"]').click() #通过tag标签定位 #*号可以匹配任何标签 dr.find_element_by_xpath('//*[@id="loginform-username…
Python3 Selenium自动化-select下拉框 selenium介绍select下拉框相关的操作方法:…
简介: Selenium 是一个没有正式指导手册的开源项目,这让测试人员的问题调查很费时间.本文为基于 Selenium 1.0(发布于 2009 年 6 月)的测试期间的常见问题提供最佳实践. 简介 Selenium 是一个健壮的工具集合,跨很多平台支持针对基于 web 的应用程序的测试自动化的敏捷开发.它是一个开源的.轻量级的自动化工具,很容易集成到各种项目中,支持多种编程语言,比如 .NET.Perl.Python.Ruby 和 Java? 编程语言. 利用 Selenium 测试 Aja…
1.F5可查看所有关键字,如图: 2.浏览器相关关键字: 2.1  Open Browser    https://www.baidu.com  chrome    # 打开浏览器,rf默认使用火狐浏览器,所以如果不指定浏览器,则默认使用火狐,我们可以指定浏览器为chrome,操作更快 2.2  Close Browser        # 关闭浏览器 2.3  Close All Browser    # 关闭所有浏览器并重置缓存 2.4  Maximize Browser Window   …
from timeit import Timer def test(): li=[] for i in range(10000): li.append(i) def test2(): li=[i for i in range(10000)] t=Timer("test()","from __main__ import test") print("for循环生成list:",t.timeit(1000)) t2=Timer("test2(…
在邮件发送系统或者其他一些传送文件的网站中,用户传送文件的大小是有限制的,因为这样不但可以节省服务器的空间,还可以提高传送文件的速度.下面介绍如何在Web.Config文件中配置限制上传文件大小与时间. 在Web.Config文件中配置限制上传文件大小与时间字符串时,是在<httpRuntime><httpRuntime/>节中完成的,需要设置以下2个属性: maxRequestLength属性:用于防止服务器攻击,例如因用户向服务器发送大型文件而导致的拒绝访问.默认值为4096(…
有这样的一个场景: 假设生成的测试报告与多人相关,每个人都去测试服务器査看就会比较麻烦,如果把这种主动的且不及时的査看变成被动且及时的査收,就方便多了. 整个程序的执行过程可以分为三个步骤: ①    通过unittest框架的discover()找到匹配测试用例,由HTMLTestRunner的run()方法执行测试用例并生成最新的测试报告. ②    调用new_report()函数找到测试报告目录(test_case)下最新生成的测试报告,返回测试报告的路径. ③    将得到的最新测试报…
测试思路:单个测试集.单个测试汇成多个测试集.运行测试集.生成测试报告.发送至邮箱. 第一步:建立单个测试集,以cnblog登录为例. 测试用例: cnblog的登录测试,简单分下面几种情况:(1)用户名.密码正确(2)用户名正确.密码不正确(3)用户名正确.密码为空(4)用户名错误.密码正确(5)用户名为空.密码正确 头文件: import unittest from selenium import webdriver import time #coding:utf-8 import unit…
3.1 unittest简介 前言(python基础比较弱的,建议大家多花点时间把基础语法学好,这里有套视频,可以照着练习下:http://pan.baidu.com/s/1i44jZdb 密码:92fs)熟悉java的应该都清楚常见的单元测试框架Junit和TestNG,这个招聘的需求上也是经常见到的.python里面也有单元测试框架-unittest,相当于是一个python版的junit.python里面的单元测试框架除了unittest,还有一个pytest框架,这个用的比较少,后面有空…
转自 : https://www.cnblogs.com/AlwinXu/p/5836709.html 1 什么是selenium Selenium 是一个基于浏览器的自动化工具,它提供了一种跨平台.跨浏览器的端到端的web自动化解决方案.Selenium主要包括三部分:Selenium IDE.Selenium WebDriver 和Selenium Grid: Selenium IDE:Firefox的一个扩展,它可以进行录制回放,并可以把录制的操作以多种语言(例如java,python等)…
什么是自动化测试框架 自动化测试框架能够提供便利给用户高效完成一些事情,比如,结构清晰开发脚本,多种方式.平台执行脚本,良好的日志和报告去跟踪脚本执行结果. 关于自动化测试框架的定义有很多,在我大致理解下就是把能实现不同功能的软件组合在一起,实现特定的目的,这就是一个简单的自动化测试框架. 界面自动化测试框架核心是选择 一个用来编写脚本的语言,一个用来web界面的库,管理脚本的执行工具.这里选择python,web界面库用的selenium,脚本管理工具可以用unittest单元测试框架.测试报…
1 什么是selenium Selenium 是一个基于浏览器的自动化工具,它提供了一种跨平台.跨浏览器的端到端的web自动化解决方案.Selenium主要包括三部分:Selenium IDE.Selenium WebDriver 和Selenium Grid: Selenium IDE:Firefox的一个扩展,它可以进行录制回放,并可以把录制的操作以多种语言(例如java,python等)的形式导出成测试用例. Selenium WebDriver:提供Web自动化所需的API,主要用作浏览…
selenium自动化测试之整合测试报告 标签(空格分隔): 整合报告 如下截图我们添加一个文件叫做:latest_report.py文件, import time import os import smtplib from email.mime.text import MIMEText from email.header import Header import os import unittest from BSTestRunner import BSTestRunner def send_…
我们整个自动化才是报告的环节基本上分为三个部分: 1.测试用例的准备 2.测试用例的执行 3.测试报告的输出 1.测试用例的准备: 那我们就以搜孤网页做一个简单的用例: from selenium import webdriver import unittest class Case_1(unittest.TestCase): def setUp(self): self.driver = webdriver.Chrome() self.driver.maximize_window()#放大浏览器…
部分内容来自:https://www.cnblogs.com/klb561/p/8858122.html 一.基础介绍 核心概念:test case, testsuite, TestLoder,TextTestRunner,TextTestResult, test fixture TestCase(测试用例): 所有测试用例的基类,它是软件 测试中最基本的组成单元. 一个test case就是一个测试用例,是一个完整的测试流程,包括测试前环境的搭建setUp,执行测试代码(run),以及测试后环…
一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 这是python+selenium实现Web自动化第七篇博文 二.Selenium前六篇博文地址: [Selenium01篇]python+selenium实现Web自动化:搭建环境,Selenium原理,定位元素以及浏览器常规操作! [Selenium02篇]python+selenium实现Web自动化:鼠标操作和键盘操作! [Selenium03篇]…