Python自动化运营课程学习–Day1

小编会特地说一下Python自动化的上学思路,做成了驰念导图,方便下载留存,假设不老子@,能够留言可能私信找笔者要原图。
对于刚(Yu-Gang)刚进入的测试行业的人来讲,今后该如何朝着自动化方向提升,尽管接触到了自动化测量检验,又该从何出手去学啊?
这么举例,那是从智联上查找“自动化测量检验程序员”出来的选聘需求,从Hong Kong地区来看,会自动化,薪给过20k也许没不通常的,个别的恐怕因为商家的原故会给的低一些。所以来讲,做测验做的好,会了接口,会了品质,就要考虑往自动化方向升高了。

Python自动化开采学习的率先周,python自动化第七日

1.python的发展史

2.python是什么语言
编写翻译型or解释型?python是解释型的言语

python的优点:简单易懂、开采效能高、高端语言、可移植性、可扩展性、可嵌入性
症结:速度慢、代码不能够加密、线程无法利用多cpu问题

3.安装python

Windows下双本子(Python2和Python3)安装指南:

linux自带python

4.编辑了第二个python的次第
#!/usr/bin/env python

print (”hello,world”)

5.安装pycharm

6.学学了变量
变量的概念法则
变量名只可以是字母、数字依然下划线的自由组合
变量名的率先个字符不可能是数字
还只怕有别的的第一字不可能宣称成变量名

[‘and’, ‘as’, ‘assert’, ‘break’, ‘class’, ‘continue’, ‘def’, ‘del’,
‘elif’, ‘else’, ‘except’, ‘exec’, ‘finally’, ‘for’, ‘from’, ‘global’,
‘if’, ‘import’, ‘in’, ‘is’, ‘lambda’, ‘not’, ‘or’, ‘pass’, ‘print’,
‘raise’, ‘return’, ‘try’, ‘while’, ‘with’, ‘yield’]
常量都以大写

字符编码:ASCII—-》unicode—》uft-8

7.

注释
单行用#
多行用三个引号””” “”” ”’ ”’

客商输入
name = input (“name:”)
age = input (“age:”)
job = input (“job:”)
salary = input (“salary:”)

info = ”’
———–info of %s———–
Name:%s
Age:%s
Job:%s
Salary:%s
”’% (name,name,age,job,salary)

info2 = ”’
———–info of {name}———–
Name:{name}
Age:{age}
Job:{job}
Salary:{salary}
”’.format(name=name,age=age,job=job,salary=salary)

info3 = “””
———–info of {0}———–
Name:{0}
Age:{1}
Job:{2}
Salary:{3}
“””.format(name,age,job,salary)

 

print (info3)

 

1.python的上进史 2.python是怎么语言 编写翻译型or解释型?python是解释型的语言
python的亮点:简…

什么初步设计

  • 1- 以结果为导向,反推要实现这一个结果要分开为怎么步骤
  • 2- 将每一步抽象为效劳点
  • 3- 种种击破,逐条消除每二个成效点,之后再将功能点串联起来

查阅网页页面代码能够应用以下门路:

  本文为在场老男孩Python自动化运转课程第一天学习内容的下结论。

图片 1

完结的手续供给及贯彻格局

  • 步骤1:测验数据的囤积
    达成方式:存款和储蓄测验用例数据,可以采取MySQL数据库
  • 步骤2:从存款和储蓄设备中获取数据
    兑现方式:Python从MySQL中取必要的多寡,涉及操作的卷入和sql脚本编写
  • 步骤3:自动发送接口央求
    福寿年高格局:Python发送HTTP央浼,获取再次回到包数据
  • 手续4:相比较重回结果和预期结果
    达成格局:从再次来到包中获取需求的多寡和预期结果相比较
  • 步骤5:把结果写入存款和储蓄设备中
    落实情势:将比较结实写到对应的测验用例前面
  • 步骤6:保存测量试验结果
    得以完成格局:把数据库表数据导出到excel中

Chrome:按F12要么网页页面右键的“检查”           
Firefox:网页页面右键的“检查核对成分”

大约内容如下:

粗略的说,想要学会自动化测验,必需求会一门语言,java也好,Python也好,都以为着产生自动化测验。
那么就对准于java自动化和Python自动化那七个样子去说一下实际的就学思路,思维导图会相应的配上,方便阅读。

虚幻步骤到作用点

  • Python处理MySQL数据(步骤1,2)
  • Python发送http合同接口供给(步骤3)
  • Python管理http重返包数据(步骤4)
  • Python总结导出测量试验结果(步骤5,6)

图片 2

  Python介绍

java自动化 一、自动化测量试验基础,初识Selenium工具
1、自动化测验理论及适用范围 2、自动化测量试验工具及selenium工具介绍
3、前端工具和技能

1.经过id属性来恒定成分(id属性在html文书档案中必得怀有独一性)

      第一个Python程序: Hello World

二、Java语言,熟知编写自动化测量试验脚本 1、Java数据类型 2、常量与变量
3、导入和输入输出 4、Java结构化语句 5、Java数组与字典 6、Java类与目的7、脚本非凡管理

   find_element_by_id()方法

      Python变量

三、SeleniumAPI操作方法,以至脚本巩固 1、元素定位和等待安装
2、开垦者工具的操作使用 3、模拟键盘、鼠标在页面中的操作
4、html规范控件操作和弹窗操作 5、截屏和剖断操作

   文本输入框定位:find_element_by_id(‘kw’)

      客商交互(客户输入、输出)

四、testNG单元测量试验框架 1、框架介绍及计划 2、注解及品质组合使用景况3、测量检验用例的二种试行措施 4、日志和断言实例讲授


     
流程序调整制:条件语句(if/elif/else)、循环语句(for/while/break/continue)

五、自动化框架,selenium grid并发自动化测验 1、TestNG数据驱动
2、页面前境遇象形式 3、测验框架德姆o 4、Selenium
Grid并发测验IE,Firefox,Chrome

2.透过name属性来定位成分(name属性在当下页面中)

一、Python语言介绍:

六、移动端自动化测量试验,Appium工具的操作使用 1、移动端自动化测量检验2、主流移动自动化测验工具及Appium 3、Appium自动化学工业具的操作与使用
4、Appium工具实战测量试验,搭建测量试验碰到运转德姆o

   find_element_by_name()方法

     1、Python语言定义:

七、APP成分定位、操作步骤、以至工具 1、成分定位工具 2、成分定位
3、页面成分操作

   文本输入框定位:find_element_by_name(‘wd’)

   
1)Python是解释型语言:那正是说,与C语言和C的衍生语言分化,Python代码在运营此前无需编写翻译;

八、appium巩固、并行测量试验 1、截图和等候格局 2、并行测验实战的勤学苦练
3、怎么样转移测量试验报告 4、自动化搭建及实战


       
 2)Python是动态类型语言:指的是您在注明变量时,无需验证变量的体系。你能够一贯编写类似x=111x="I'm a string"如此那般的代码,程序不会报错。

九、Jenkins持续集成工具和monkey测验工具的操作使用
1、Jenkins持续集成概念,搭建测量试验蒙受 2、Jenkins实战操作
3、monkey概述和基本接纳 4、monkey脚本录像、命令详解以致api用法

3.经过class属性来恒定成分

         3)Python是强类型定义语言:在运用变量前,务必先定义。

图片 3

   find_element_by_class_name()方法

         Python由吉多 van
罗斯尔um于1987圣诞之间支付,第4个职业版本Python编写翻译器诞生于一九九一年。现已成为主流的编程语言之一。

接下去讲Python具体学习方向及思路

   文本输入框定位:find_element_by_class_name(‘s_ipt’)

   
 2、应用领域:首要行使于云总括、WEB开采、科学去处和数目剖判、人工智能、金融、系统运营、图形GUI等地方。

一、自动化测量试验基础、初识selenium工具


     3、Python的利弊:

1、自动化测量检验理论及适用范围

4.通过tag来定位成分

    优点:简单、分明、温婉;开采作用高;可移植性强;可扩大性;可嵌入性。

2、自动化测量试验工具及selenium工具使用

   find_element_by_tag_name()方法        
没成功!!!!略过………………..

         
 劣势:比C语言/JAVA实行进度慢(PyPy解释器的实践进程有的时候比C还快);代码无法加密(解释型语言);线程无法运用多CPU难点。

3、变量与数据类型


     
4、Python的解释器:Python解释器有为数不菲,如CPython、IPython、PyPy、Jython、IronPython等,但利用最广大的照旧CPython。

4、前端工具和才能

5.透过link成分标签对中间的公文音信来牢固成分

二、关于本文中具有运转Python代码的条件:

二、Python语言及熟识编写自动化测验脚本

   find_element_by_link_text()方法

   –操作系统:Ubuntu 16.10 (Linux 4.8.0)

1、Python入门


      图片 4

2、运算符疏解及选择

6.经过partial link定位成分,和link类似,只可是是一对文书音信来展开定点

   –Python版本:3.5.2

3、条件决定及循环

   find_element_by_partial_link_text()方法

      图片 5

4、文件读写操作


   –Python IDE: PyCharm 2016.3.2

5、数据库操作

7.find_element_by_xpath()方法

      图片 6

6、错误和特别管理

  
7.1相对路线来恒定:find_element_by_xpath(‘/html/body/………’)   

三、第贰个程序:Hello World

三、seleniumAPI操作方法,及脚本巩固

  
文本框:find_element_by_xpath(“/html/body/div[2]/div[1]/div/div[1]/div/form/span[1]/input”)

        通过vim/vi命令新建贰个Python File,命令为“HelloWorld.py” ,  vim
HelloWorld.py 。

1、浏览器的操作

图片 7

   在HelloWorld.py中输入正面包车型客车剧情:

2、元素定位和等候安装

   7.2因而质量定位元素

#!/usr/bin/python3.5                     # 告诉Linux系统,要通过/usr/bin/python3.5解释器来执行正面的代码
# -*- coding: utf-8 -*-           # Python2中必须添加这个一行,告诉Python解释器,要以UTF-8的编码形式执行正面的代码;Python3中默认UTF-8,可以不用添加本行。
# Author: Spencer Jiang           # 作者

print("Hello, World!")           # 打印Hello, World!

3、开荒者工具的操作使用

   find_element_by_xpath(“//标签名[@属性=‘属性值’]”)

  三种运营格局:

4、模拟键盘,鼠标在页面中的操作

   id属性:find_element_by_xpath(“//input[@id = ‘kw’]”)

    1)、给HelloWorld.py赋可进行权限,然后奉行: chmod 755
HelloWorld.py

5、HTML标准控件操作和弹窗操作

   name属性:find_element_by_xpath(“//input[@name = ‘wd’]”)

> chmod 755 HelloWorld.py
> ./HelloWorld.py

6、截屏和断言操作

   若是不想钦点标具名,可以将标具名用 *
取代,xpath不囿于于id、name、class这多少个属值,
成分的大肆属性都足以选拔,只要它能独一标记一个因素

    图片 8

四、unittest测量检验框架实战操作

   7.3通过标签署位成分

    2)、直接通过Python施行:python安装路线

1、unittest框架介绍及配置操作

  
当成分未有独一标志的习性能够动用时,可现在上层级进行检索,假诺标签中有独一标志,那
么可以使用标署名来扩充固化

> /usr/bin/python3.5 HelloWorld.py

2、测量检验用例试行

   find_element_by_xpath(“//span[@class = ‘bg s_ipt_wr’]/input”)

    图片 9

3、日志和断言

   7.4透过四本性格组合定位成分

 

五、数据驱动/pageobject驱动

  
当壹特质量否独一区分一个因素,能够用逻辑运算符and来一而再七个属性查找成分

三、Python变量

1、数据驱动操作

   find_element_by_xpath(“//input[@id = ‘kw’ and @name = ‘wd’]”)

  1、变量定义的法则:

2、页面前碰到象情势


  • 变量名只可以是 字母、数字或下划线的任性组合
  • 变量名的率先个字符无法是数字
  • 以下入眼字不能够声称为变量名
    [‘and’, ‘as’, ‘assert’, ‘break’, ‘class’, ‘continue’, ‘def’, ‘del’,
    ‘elif’, ‘else’, ‘except’, ‘exec’, ‘finally’, ‘for’, ‘from’,
    ‘global’, ‘if’, ‘import’, ‘in’, ‘is’, ‘lambda’, ‘not’, ‘or’, ‘pass’,
    ‘print’, ‘raise’, ‘return’, ‘try’, ‘while’, ‘with’, ‘yield’]

3、测量检验框架demo

4、二十四线程实战操作

图片 10

    • 使得 标志符名称的例子有i__my_namename_23a1b2_c3

    • 无效 标志符名称的例子有2thingsthis is spaced outmy-name

六、移动端自动化测验,appium工具操作使用

8.透过CSS定位成分

  2、变量赋值:通过二个等号给变量赋值

1、移动端自动化测验

   8.1经过id属性定位成分

     示例: name = “Spencer Jiang”

2、主流移动自动化测量试验工具及appium介绍

   文本框:find_element_by_css_selector(“#kw”)

     也能够在一行能多少个变量进行赋值。如: 

3、appium自动化学工业具的操作与使用

   按钮:find_element_by_css_selector(“#su”)

a, b = 3, "jmw"
print(a, b)
print(type(b), type(a))

######### 下面为输出结果:
3 jmw
<class 'str'> <class 'int'>

4、appium工具实战测量试验、搭建测验遭受运转demo

   8.2由此class属性定位成分

  

七、应用程式成分定位、操作步骤以至工具讲授

   文本框:find_element_by_css_selector(“.s_ipt”)

四、客商交互 与 格式化输出:

1、成分定位工具讲明

   按钮:find_element_by_css_selector(“.bg s_btn”)

      顾客输入 Python3用input()函数就好了,
Pyhton2某个复杂先不去学。

2、成分定位方法实战

   8.3因而任何属性值来牢固元素

  
input()函数能接收从客户输入的任务字符,并以字符串类型重临客户输入的字符。

3、页面成分操作实战

   文本框:find_element_by_css_selector(“[name = ‘wd’]”)

  示例1(UserInput.py): name = input(“Please input your name: “)   

八、appium加强、并行测量试验

                   find_element_by_css_selector(“[maxlength =
255]”)

               age = int(input(“Please input you age: “))    #
将客户输入的字符调换到int类型,再赋值给变量 age。

1、截图和等候情势

                   find_element_by_css_selector(“[autocomplete =
‘off’]”)

#!/usr/bin/python3.5
# -*- coding:utf-8 -*-
# Author: Spencer Jiang

name = input("Please input your name: ")

age = int(input("Please input you age: "))

print("Your Name: %s, Your Age: %d" % (name, age))

2、并行测量检验实战

   8.4经过层级老爹和儿子关系来定位成分

  图片 11

3、怎么样变化测量试验报告

   文本框:find_element_by_css_selector(“span > input “)

   示例2:
客商名、密码的输入,通过getpass模块,将密码遮蔽呈现。(HidePassword.py)  

4、自动化搭建及实战

   拓展:find_element_by_css_selector(“span > input.s_ipt”)

#!/usr/bin/python3.5
# -*- coding: utf-8 -*-
# Author: Spencer Jiang

import getpass
username = input("Please input your username: ")

password = getpass.getpass("Please input your password: ")

print(username, password)

九、Jenkins持续集成工具和monkey测量检验工具的操作使用


    图片 12

1、Jenkins持续集成概述、搭建测验遭遇

     格式化输出

2、Jenkins实战演练

    1)、print()函数中增多%号来格式化输出。

3、monkey概述和骨干采纳

      输出字符串:%s ,输出数值 %d, 输出浮点数%f等, 示例:

4、monkey脚本摄像,命令详解以致API用法

#!/usr/bin/python3.5
# -*- coding:utf-8 -*-
# Function : The format output
# Date : 2017-02-10
# Author : Spencer Jiang

username = "Spencer Jiang"
age = 45
salary = 231.32

print("Your name is : %s " % username)
print("Your age is : %d " % age)
print("Your salary is : %f " % salary)
print("Your salary2f is : %.2f " % salary)            # 保留2位小数

图片 13

  图片 14

一旦思索导图非常不足显著能够在自个儿群众文化艺术件夹里下载高清原图,包含初级中学高档软件测量试验部分学习课本都可在群里征采,38734
8767

 

    2)、 通过format()函数进行格式化输出。

#!/usr/bin/python3.5
# -*- coding:utf-8 -*-
# Function : The format output
# Date : 2017-02-10
# Author : Spencer Jiang

username = "Spencer Jiang"
age = 45
job = "IT Service"
salary = 231.32

info = '''
Name: {_username}
Age: {_age}
Job: {_job}
Salary: {_salary}
'''.format(_username = username, _age = age, _job = job, _salary = salary)

print(info)

  图片 15

 

五、流程序调节制:条件判定语句(if/elif/else):**

  种种条件前边都以冒号结束,换行(条件为真时要施行的代码,以缩进作为代码块标记,python官方指出缩进4个空格)

      示例1:猜年龄(数字)游戏(GuessAge.py)。

#!/usr/bin/python3.5
# -*- coding: utf-8 -*-
# Author: Spencer Jiang

age_of_spencer = 65         #先设定的年龄的数值
guess_age = int(input("guess an age: "))

if guess_age == age_of_spencer :
    print("Yes, You got it!")
elif guess_age > age_of_spencer :
    print("No, your number is a litter bigger")
else:
    print("No, your number is a litter smaller")

  图片 16

六、流程序调整制:for循环(for x in
range(10))、break、continue、pass:**

   当满意循环条件时,执行循环语句块的代码,当不满足循环条件时,循环语句就结束。

   for/while 循环外也足以跟八个else。

   break: 当试行break时,就归西全体循环;

   continue: 当推行continue,就终止这次巡回,直接开展后一次循环。

       pass:
表示点位符,什么都不实行,幸免程序报错。

         示例1:输出0到15中的2、4、6、8等4个数字(PrintNumber.py)。

#!/usr/bin/python3.5
# -*- coding: utf-8 -*-
# Author: Spencer Jiang

for i in range(0,15,2):
    if i == 0 :                                  # 跳过 0 这个数字
        continue
    if i > 9 :                     # 大于9 就退出循环
        break
    else:
        print(i)

  图片 17

 七、流程序调控制:while循环、break、continue、pass(与for循环类似)

  while
循环,需求有贰个计数器,可能在循环语句块中有终止while条件的话语,不然会直接运营下去。

      示例1(WhileLoop.py): 打印0~9数字

#!/usr/bin/python3.5
# -*- coding: utf-8 -*-
# Author: Spencer Jiang

count = 0          # 计数器

while True :
    print(count)
    count = count + 1
    if count > 9 :
        break

  图片 18

  示例2(GuessAgeWhile.py):猜年龄(数字): 只能猜3次机会。  

#!/usr/bin/python3.5
# -*- coding: utf-8 -*-
# Author: Spencer Jiang

age_of_spencer = 65

count = 0

while count < 3 :
    guess_age = int(input("guess an age: "))
    if guess_age == age_of_spencer :
        print("Yes, You got it!")
        break
    elif guess_age > age_of_spencer :
        print("No, your number is a litter bigger")
    else:
        print("No, your number is a litter smaller")
    count += 1
else:
    print("You guess to much times!!!")

  图片 19

  

   
示例2,每猜3次不科学后,弹出提示,看顾客是或不是还要持续猜下去。假设客商输入的是“n”就表示甘休。

#!/usr/bin/python3.5
# -*- coding: utf-8 -*-
# Author: Spencer Jiang

age_of_spencer = 65

count = 0

while count < 3 :
    guess_age = int(input("guess an age: "))
    if guess_age == age_of_spencer :
        print("Yes, You got it!")
        break
    elif guess_age > age_of_spencer :
        print("No, your number is a litter bigger")
    else:
        print("No, your number is a litter smaller")
    count += 1
    if count == 3 :
        continue_confirm = input("Do you want to continue to guess?")
        if continue_confirm != 'n' :
            count = 0
else:
    print("You guess to much times!!!")

  图片 20

八、 Python代码注释: 

  #          单行注释用 井号“#” 开头

   ”’ 或者 “””     
多行注释选择3对单引号或3对双引号将在注释的行李包裹围进来。

       同有时候3对引号,也能够象征对字符串的赋值(段落文字),如:

info = """ your information :
name : jmw
age : 32
"""    

九、作业:

  1、模拟客户登陆接口:1)由客商输入顾客名、密码;2)登陆成功,则显得迎接消息;3)登入失利超过3次将在锁定账号。

      2、三级菜单:省、市、县3级地区为菜单。

(本节完)

                     

相关文章