大实训一知识纲要

一 计算机历史:

四个阶段

2 操作系统:

1.移动端系统:android和ios 2pc端:Windows linux,macOS,Unix3 Linux

1.Linux分类:Ubuntu ,centos,redhat

2 虚拟机安装

3 虚拟机的创建

4 Linux命令

1.目录切换

切换到根目录 cd /   

切换到上一级目录 cd../

切换到用户主目录 cd ~

切换到指定目录 cd/usr

切换为超级用户 su root

2.目录

创建目录:mkdir 目录名称

删除目录  rm  -rf   目录名称

移动目录  mv  -r 被移动的目录   目标位置(想要移动到哪里)

复制目录 cp -r被复制目录   目标位置目录

查看目录 ls ,ls -a,ls-l,(ll)

修改目录名称 mv 旧名字  新名字

查找目录 find  目录,find /-name 目录

Linux环境配置

1 ssh安装

2 jdk

3 Mysql

4 tomcat安装,解压  开放端口

5 jenkins 持续化继承工具


二 shell脚本

1.变量

定义变量:变量名=值

输出:echo

双引号:遇到$输出变量值,但是被\处理为字符串

单引号:遇到$默认字符串

linux用反单引号`包裹

2.脚本输出当前目录

#!/bin/bash

dir=`pwd`

echo $dir

3 输入,输出,调用

echo

read

./sh

4 参数的传递格式:sh  a.sh 参数列表

$1:接收第一个参数~~$n

$n: 文件名称

$@: 所有参数 s

$#: 参数个数  $0

5 运算符

1逻辑

-a

-o

!

2 比较

1.数字

-eq

-ne

-gt

-lt

-le

2 字符串

==

!=

6.if

1.单条件语句

if [条件]

then

操作

else

操作语句

fi

2.多条件语句

if[条件]

then

语句

.

.

.

elif[ 条件 ]

then

语句

.

.

.

else

语句

fi

7.case

case "$变量名"in

"")

语句;;

esac

8 for

for i in 1 2 4

for i in `seq 开始值 间隔 结束值`

9 while

while [ 条件 ]

do

语句

done

10 函数

先定义,在调用

参数

返回值 0没问题  1有问题


三 Jmeter

1.下载,配置,安装

2 线程组

1.进程 ,线程,线程组

1.创建 :测试计划-》添加-》线程-》线程组

2.3个参数 线程数,准备时长,循环次数

3.http请求,指定域名,路径

4 .查看结果

1.查看结果树

2.查看图形结果

3.聚合报告

4.用图标看结果

5 逻辑控制器

1.循环控制器

2.事务控制器

6 断言

预先判断可能会出现的字符串,如果匹配成功断言成功,否则断言失败

1.响应断言

2.json断言

7 处理器

8 定时器

9 组件参数化

1.添加-》配置原件-》用户定义变量

2.定义一个变量并赋值

3.在http请求中调用变量

4 在http请求电泳第二步中定义变量

5 数据库导出TXT文件

10 jmeter函数助手

1.工具-》函数助手-》选择csvread-》文件路径

2.把生成的代码复制到发哦http请求界面参数

11 脚本录制

1.移动端录制

1.保证在同一网络

2.jemter-测试计划-添加非测试元件-http服务代理-设置端口

12 jmeter压测

1.为什么做压测

2.数据库压测

3.服务器压测

一、Linux命令

1、目录操作

        (1)cd usr/                            切换到该目录下usr目录

       (2) cd ..                                切换到上一层目录

       (3) cd /                                切换到系统根目录

       (4) mkdir 目录名称               创建目录

        (5)ls       目录名称                查询该目录下所有的目录和文件

        (6)ls [-a]  目录名称               查询该目录下所有的目录和文件,包含隐藏文件

       (7) ls [-l]   目录名称               查询该目录下所有的目录和文件的详细信息

       (8) find / -name 目录名称     查找/root下的目录(文件)

        (9)mv 目录名称 新目录名称   修改目录名称

       (10) mv 目录名称 目录的新位置      剪切

        (11)cp -r 目录名称 目录的目标位置  拷贝

        (12)rm -rf  目录                   强制删除目录

2、文件操作

        (1)touch 文件名称            创建空文件

        (2)cat/more/less/tail 文件   查看文件内容

        (3)tail -f 文件                   动态查看/实时查看文件(日志)

       (4) grep 要搜索的字符串 要搜索的文件                 关键字搜索

        (5)vi/vim  文件                 修改文件内容

        (6)rm -rf 文件                 强制删除文件

 3、文件的打包

        (1)tar -zcvf 文件名.tar  要打包的文件

4、文件的解压 

        (1)tar -xvf 文件名.tar

       (2)扩充:将文件解压到固定位置

       (3)tar -xvf 文件名.tar -C 指定解压的位置

 5、 查询当前所在位置: pwd

6、  查看进程:ps -ef | grep 进程名称(tomcat/mysql)

7、杀死进程: kill -9 进程pid

8、 查看端口号:netstat -an | grep 端口号(3306)

9、  查看服务器ip: ifconfig

10 查看网络是否能正常使用

        (1)ping 外网地址             查看是否能访问外网

        (2)ping 内网ip                查看是否能访问内网

11、权限命令:  (1)chmod 777 文件   (2) 赋权

12、 查看cpu:top

13、 查看磁盘信息:df -h

 14、查看内存信息:free

 15、关机命令:

        (1)shutdown -h now  立刻关机,其中now相当于时间为0的状态

       (2)shutdown -h 10:23

       (3)shutdown -h +10    系统再过十分钟后自动关机

16、重新启动:reboot    重新启动操作系统

一、计算机的历史

            1、第一代计算机(1946~1958)

            2、第二代计算机(1958~1964)

            3、第三代计算机(1964~1971)

            4、第四代计算机(1971~ 现在)

二、单元测试、集成测试、功能测试

单元测试:颗粒度最小,一般由开发小组采用白盒方式来测试,主要测试单元是否符合“设计”;是指对软件中的最小可测试单元进行检查和验证

集成测试:介于单元测试和系统测试之间,一般由开发小组采用白盒加黑盒的方法测试,即验证设计又验证需求。主要用来测试模板与模板之间的接口,同时还要测试一些主要的业务功能。

功能测试:颗粒度最大,一般由独立的测试小组采用黑盒的方式来测试,主要测试系统是否符合需求规格说明书。

一、UnitTest组成

        (1)setUp():准备环境,执行每个测试用例的前置条件;    

        (2)tearDown():环境还原,执行每个测试用例的后置条件; 

        (3)setUpClass():必须使用@classmethod装饰器,所有case执行的前置条件,只运行一次;

        (4)tearDownClass():必须使用@classmethod装饰器,所有case运行完后只运行一次;

1、testFixture

            作用:用于一个测试环境的准备和销毁还原

    2、testCase

            定义:就是一个测试用例

3、testSuite

             测试套件,可以将多个测试用例集合在一起,能一起执行选中的测试用例

  4、testRunner

             执行测试用例

二、断言

       (1)assertEqual(a,b):断言a和b是否相等,相等则测试用例通过。(最常用的)

        (2)assertNotEqual(a,b):断言a和b是否相等,不相等则测试用例通过。

        (3)assertTrue(x):断言x是否True,是True则测试用例通过。

        (4)assertFalse(x):断言x是否False,是False则测试用例通过。

       (5) assertIs(a,b):断言a是    否是b,是则测试用例通过。

        (6)assertNotIs(a,b):断言a是否是b,不是则测试用例通过。

        (7)assertIsNone(x):断言x是否None,是None则测试用例通过。

       (8) assertIsNotNone(x):断言x是否None,不是None则测试用例通过。

        (9)assertIn(a,b):断言a是否在b中,在b中则测试用例通过。

       (10) assertNotIn(a,b):断言a是否在b中,不在b中则测试用例通过。

       (11)assertIsInstance(a,b):断言a是是b的一个实例,是则测试用例通过。

        (12)assertNotIsInstance(a,b):断言a是是b的一个实例,不是则测试用例通过。

三、生成测试报告

1、下载一个文件,HTMLTestRunner.py,复制到项目中

     2、使用

四、读取CSV数据

      1、创建CSV文件并添加数据

  2、创建读取CSV文件

  3、在测试类中调用即可

五、xml读取

  1、创建xml文件

  2、编写读取xml文件的文件

    3、调用

自动化持续集成

一、概念

       1、 就是一套标准的流程,最重要的组成部分就是持续集成(Continuous integration,简称CI)

        2、持续集成:频繁地将代码集成到主干。

        3、持续交付:指的是,频繁地将软件的新版本,交付给质量团队评审。

        4、持续部署:是持续交付的下一步,评审通过后,自动部署到生成环境。

二、Jenkins

            1、概念:Jenkins 是一个开源软件项目,是基于Java开发的一种可拓展持续集成工具,主要用于持续、自动地构建 / 测试 / 集成软件项目以及监控一些定时执行的任务。

            2、目的:(1)持续、自动地构建/测试软件项目。

                            (2)监控软件开放流程,快速问题定位及处理,提示开放效率。

            3、特性:易于安装、易于配置、通过 RSS 发布构建结果或当构建完成时通过 e-mail 通知、生成 JUnit / TestNG 测试报告、分布式构建、插件支持,支持扩展插件

            4、产品发布流程:产品设计成型 → 开发人员开发代码 → 测试人员测试功能 → 运维人员发布上线

三、安装Jenkins.war包

                (1)启动方式:在tomcat的bin目录下启动(最常用)

                  (2)方式2:打开cmd,进入jenkins目录,然后运行命令:java -jar jenkins.war

四、搭建Jmeter+jenkins+ant持续化

                   (1) Ant下载及配置安装

                    下载Apache-ant

                    解压到你想要安装的目录

                    配置环境变量

                    验证是否安装成功

                    拷贝Jemter包到ant下

                    新建一个build.xml文件

                    (2)进行命令行模式后,进入刚才创建的xml文件存放目录,如:D:\build 输入ant即可

五、集成jenkins

                    打开Jenkins,配置Ant环境

                    新建一个自由风格任务

                    构建触发器

                    构建配置

                    配置HTML插件

                    立即构建

                    针对报告中不显示聚合报告的情况

                    Jenkins执行自动化测试后发送测试报告邮件

一、自动化测试的好处

              1、  缩短测试周期:计算机行业更新迭代快速,大量频繁的回归测试消耗时间,自动化测试能够将重复的实行交给计算机去做,加快测试速度。

            2、避免人为出错:测试人员不可能持续高度集中,并且人类易受外界影响(头疼脑热,精神不振),可能会造成人为错误

            3、测试信息存储:自动化测试将测试信息和数据储存在文件中,思路清晰明确,交接方便

            4、轻易获取覆盖率:自动化测试能够解放测试人员,使测试人员能够有更多的精力做那些非重复性的工作。

            5、其他:自动化测试可以是实现自动或者定时执行

注意:自动化测试的方向是对的,而且趋势也是如此,但是有些自动化实现不了的还是会手动测试的。

二、自动化分类

               1、 整体分类

                    (1)自动化功能测试

                    (2)自动化性能测试

                2、自动化功能测试的分类:

                    (1)单元测试:程序员搞定

                    (2)功能测试

                    (3)接口测试:大中型项目或长期项目可以采用自动化测试

                    3、性能测试主要是使用测试工具

                      (1)Loadrunner、Jmeter等,对软件进行压力测试、负载测试等等,因为这些无法用手工进行代替,所以必须自动化。

三、web自动化条件的使用和范围

                    1、前提条件

                           (1)手动测试已经完成,后期再不影响进度的前提下逐渐实现自动化

                           ( 2)项目周期长,重复性的工作都交给机器去实现

                           ( 3)需求稳定,项目变动不大

                            (4)自动化测试脚本复杂度比较低

                           ( 5)可重复利用

                    2、使用自动化测试的场景

                            (1)频繁的回归测试

                            (2)冒烟测试

                            (3)传统行业需求变化不大,应用频繁

                            (4)性能测试

四、web自动化常用的工具

            1、QTP(收费)

            2、Selenium(开源)

            3、RFT(收费)

            4、(1)元素定位工具:css选择器、xpath

                    (2)环境工具:(1)firefox35

                                               (2)firebug插件

                                               (3)firepath插件

            5、什么是xpath:XPath即为XML路径语言,它是一种用来(标准通用标记语言的子集)在 HTML\XML 文档中查找信息的语言。

            6、什么是xml:XML 指可扩展标记语言(EXtensible Markup Language)XML 是一种标记语言,很类似 HTMLXML 的设计宗旨是传输数据,而非显示数据

            7、(1)xml是设计为传输和存储数据的。

                (2)html是显示数据以及更好的显示数据

            8、获取元素

                (1)nodename:选取此节点的所有子节点

                (2)/从根节点选取

                (3)//从匹配选择当前节点选择文档的节点,不考虑位置

                (4)“.”选取当前节点

                  (5)“..”选取当前节点的父节点

                (6)@选取属性

你可能感兴趣的:(大实训一知识纲要)