博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
学习PHP精粹,编写高效PHP代码之自动测试
阅读量:6757 次
发布时间:2019-06-26

本文共 1223 字,大约阅读时间需要 4 分钟。

  hot3.png

如果要制造出完美的产品,必须对它进行全方面检验测试。这里有几种类型的测试,每一种测试都针对应用程序的某个具体方面。

本文将对单元测试、数据库测试、系统测试、负载测试进行介绍。

一、单元测试

单元测试是测试应用程序的每一步,要确保其各个组成部分运转正常。若没有单元测试,在应用程序中找出导致错误运行的原因一般来说相当困难。

单元测试通常采用一个单元测试框架,它提供了编写和运行测试并输出结果所需要的基本结构。

一些较为常用的单元测试框架包括:

PHPUnit:

SimpleTest:

PHPT:

二、数据库测试

PHPUnit数据库扩展模仿了JUnit的DbUnit扩展,它是事实上的Java单元测试框架。PHPUnit数据库扩展不处理创建数据库、表或用户凭证;它在假设这些已经创建的基础上运行。

PHPUnit数据库测试参考:

三、系统测试

一旦系统的各个组成部分以及与外部系统的交互已经完成测试,那么我们将要对作为一个整体的应用程序进行测试,这成为系统测试。

对于Web应用程序而言,这往往通过编写自动化测试以一个真实用户会采用的相同方式与浏览器交互来完成。

编写和执行这种测试的流行软件包是Selenium,它是一个基于Java的服务器,运行客户端连接到它,执行命令以启动浏览器并与之交互。该软件常常用于在Web应用程序内部执行一系列动作,并对最后加载的文件内容进行断言以确认其达到预期的功能。

Selenium:

PHPUnit包含一个Selenium扩展,它允许这些交互得以执行。

四、负载测试

一旦应用程序工作正常,无论是其各个组成部分还是作为一个整体,我们非常有必要了解应用程序作为一个整体如何运行。

负载测试模拟一组用户的行为以确定应用程序在负载下如何表现。

接下来将介绍两种测试工具:ab、siege

1、ab测试工具

作为Apache HTTP服务器项目的组成部分,ab是一个相对简单的已开发基准测试工具,并且适用于大多数安装有Apache的环境中。

它有许多参数,我们对其如何引导测试稍加调整,其中有3个经常用到的参数:

1)-c #:每秒的并发请求数,或同时访问应用程序的用户数量。

2)-n #:要发送的请求书。

3)-t #:测试持续的以秒计算的最长时间,假设为-n 50000。

因此,举例来说,如果你想模拟一分钟内10个并发用户的行为,你可以使用如下命令:

ab -c 10 -t 60 http://localhost/phpinfo.php

 

ab使用参考:

2、Siege测试工具

另一个常用的负载测试工具是Siege,它由Joe Dog软件开发。ab的负载测试限制在一个特定的URL上,而除了URL之外,Siege还可对整个应用程序进行负载测试。Siege手册介绍了它的所支持的选项。

Siege:

Siege手册:

转载于:https://my.oschina.net/refine/blog/276749

你可能感兴趣的文章
实验5 Spark SQL编程初级实践
查看>>
SVG图案
查看>>
java 基础 --- volatile
查看>>
poj3158
查看>>
ubuntu 安装kafka
查看>>
学习基础知识真的枯燥
查看>>
航院1009: FatMouse’s Trade
查看>>
IntelliJ Idea 2017 免费激活方法
查看>>
redis基本配置和相关设置
查看>>
「小程序JAVA实战」小程序开发注册用户的接口(33)
查看>>
C#键盘事件处理父窗体子窗体
查看>>
实验六
查看>>
《现代操作系统》学习笔记之存储管理之地址空间
查看>>
ASP.NET MVC2 in Action 读书笔记 [3]
查看>>
报表数据填报中的自动计算
查看>>
online_judge_1105
查看>>
复制功能的实现
查看>>
Remove Element
查看>>
ES6 Promise 用法讲解
查看>>
20180320作业1:源代码管理工具调查——15100216
查看>>