• 1. 链接测试

       1.1 测试点:

  • 是否添加链接
  • 链接页面是否存在
  • 链接页面与需求是否一致:页面的正确性、打开方式 等      

       一般,该链接测试在集成测试阶段(页面均开发完成)的时候进行

       1.2 测试工具:

  • Xenu Link Sleuth 免费 绿色免安装软件

  • HTML Link Validator 共享(30天试用)

       1.3 延伸代码:

    测试工具在实际应用时,其实是挺受限的。有时候,需要自己写点小代码去验证,主要用于系统回归。

    比如:

    

 //        封装判断web链接返回状态是否为2开头的
public static void ReadUrl(String surl){
try {
URL url = new URL(surl);
URLConnection rulConnection = url.openConnection();
HttpURLConnection httpUrlConnection = (HttpURLConnection) rulConnection;
httpUrlConnection.setConnectTimeout(300000);
httpUrlConnection.setReadTimeout(300000);
httpUrlConnection.connect();
String code = new Integer(httpUrlConnection.getResponseCode()).toString();
String message = httpUrlConnection.getResponseMessage();
// System.out.println("getResponseCode code ="+ code);
// System.out.println("getResponseMessage message ="+ message);
if(!code.startsWith("2")){
throw new Exception(surl+"ResponseCode is not begin with 2,code="+code);
}
// 打印链接返回状态码
// System.out.println(getDateTime()+"连接"+surl+"正常");
}catch(Exception ex){
// System.out.println(surl+ex.getMessage());
}
} // 封装模拟发起post请求一
public static String sendPost(String strUrl, String content, String charset) {
URL httpurl = null;
HttpURLConnection httpConn = null;
String returnStr = "";
PrintWriter outs = null;
try {
httpurl = new URL(strUrl);
httpConn = (HttpURLConnection) httpurl.openConnection();
httpConn.setRequestMethod( "POST"); // 默认是post
// 设置是否向httpUrlConnection输出,因为这个是post请求,参数要放在 http正文内,因此需要设为true, 默认情况下是false;
httpConn.setDoOutput( true);
// 设置是否从httpUrlConnection读入,默认情况下是true;
httpConn.setDoInput( true);
httpConn.setRequestProperty( "Content-Type", "text/xml");
outs = new PrintWriter(httpConn.getOutputStream());
outs.print(content);
outs.flush();
outs.close();
// 字节流 读取全部内容 包括换行符
returnStr = inputStreamToString(httpConn.getInputStream(), charset);
} catch (Exception e) {
logger.error( "执行HTTP Post请求" + strUrl + "时,发生异常!" , e);
if(outs != null){
outs.close();
outs = null;
}
return returnStr;
} finally {
if (httpConn != null)
httpConn.disconnect();
if(outs != null){
outs.close();
outs = null;
}
}
return returnStr;
} // 封装读取请求响应的内容
public static String inputStreamToString(InputStream in,String encoding) throws Exception{
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
byte[] data = new byte[1024];
int count = -1;
while((count = in.read(data,0, 1024)) != -1)
outStream.write(data, 0, count);
in.close();
data = null;
return new String(outStream.toByteArray(),encoding);
}
   void((function() {
var cars=new Array();//定义了数组,最终返回的是列表 cars=document.getElementsByTagName("a");//获取对应对象
/*cars=$("a")*/
for(var i =0;i<cars.length;i++){
var href_name;
item_name = cars[i].href; //获取对应url地址
if(item_name.indexOf("***")!=-1){
console.info(item_name);
}
} })())
var xmlhttp;
function loadXMLDoc(url)
{
xmlhttp=null;
if (window.XMLHttpRequest)
{// code for Firefox, Mozilla, IE7, etc.
xmlhttp=new XMLHttpRequest();
}
else if (window.ActiveXObject)
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
if (xmlhttp!=null)
{
xmlhttp.onreadystatechange=state_Change;
xmlhttp.open("GET",url,true);
xmlhttp.send(null);
}
else
{
alert("Your browser does not support XMLHTTP.");
}
} function state_Change()
{
if (xmlhttp.readyState==4)
{// 4 = "loaded"
if (xmlhttp.status==200)
{// 200 = "OK"
document.getElementById('p1').innerHTML=xmlhttp.getAllResponseHeaders();
}
else
{
alert("Problem retrieving data:" + xmlhttp.statusText);
}
}
}

  • 2. 表单测试

        2.1 测试点:

  • 默认值
  • 必输项
  •  输入验证:输入框的特殊文本控制(比如电话、邮箱、url地址等)、长字符、特殊字符、正负数、小数位数等。
  • 上传测试:大小、格式类型等
  •  表单操作:增删改查,完整性、正确性。

       一般,配合下面的数据校验等方面一起测试的,故这里的测试点可能不全。

       2.2  测试工具:

      WinRunner(QTP)等

先手动检查,后可以用该工具回归了。

      2.3 延伸代码:

    可以写个简单的js实现

    

 void((function(){
var select = document.getElementsByTagName('select');
for(var jj=0;jj<select.length;jj++){
selectedNode = select[jj].options;
/*取出select的所有选项值*/
for (var i=0;i<selectedNode.length;i++){
selectoption=selectedNode[i].innerHTML;
// console.info(selectoption); }
/*随机赋值*/
/*随机赋值*/
$(select[jj]).get(0).selectedIndex=1;
var checkText= $(select[jj]).find("option:selected").text();
console.info(checkText);
$(select[jj]).click; }
})()) //一般的文本框任意赋值
void((function() {
var i = document.getElementsByTagName('input');
for (var jj = 1; jj <= i.length-4; jj++) {
i[jj].value = "cs";
}
})())

也可以使用代码等,比如selenium等。


  • 3. 数据校验

      3.1 测试点:

  •  配合2的测试,验证表单数据的正确及完整性:单页面、单系统或多系统。
  •  数据的增删改查:比如代码任务的计算等

      该方面的测试,与每个系统特异性有关,故不全。

      3.2 测试工具:同上

      3.3 代码延伸


  • 4. cookies测试

      4.1 测试点:

  •  是否使用cookies:根据需求设计,确定是否使用了cookies。比如说需求需要将选择的类目保存到cookie,关闭浏览器然后再试;或者某些不能使用cookie等。
  •  cookies其他使用需求验证:比如使用 cookie 来统计次数,需要验证次数累计正确。

      该方面的测试,与每个系统特异性有关,故不全。

      4.2 测试工具:

      IECookiesView v1.50

Cookies Manager v1.1

     


  • 5. 数据库测试

5.1 测试点

我目前测试接触到的数据是oracle、mysql。

主要测试数据库的经历是oracle,哎呀,但是换了工作后,好几年不碰了,下次整理了。

  • sql语句的性能及优化

5.2 测试工具

使用及测试的工具可能是1个,可能是多个联合

TOAD for Oracle(Mysql)


  • 6. 应用程序特定的功能需求

    深刻理解需求说明文档

    比如

  •  与第三平台之间的交互等
  •  session测试:同个浏览器打开两个页面,一个页面权限失效后,另一个页面是否可操作成功等。

  • 7. 控件等技术应用测试

       7.1 测试点

  • 是否满足使用需求
  • 界面显示是否正常
  • 控件的正确性:多种操作后是否正常等

      

WEB测试—功能测试的更多相关文章

  1. Web测试——功能测试

    由于本人工作接触Web测试,所以我从网上找的资料,学习了解web测试哪些内容,然后自己整理汇总的随笔,如文章中有不足的地方,请大家多多指教:或者文章内容与他人相似,望见谅. 功能测试: 1.链接测试: ...

  2. 关于web端功能测试的测试方向

    一.功能测试 1.1链接测试 链接是web应用系统的一个很重要的特征,主要是用于页面之间切换跳转,指导用户去一些不知道地址的页面的主要手段,链接测试一般关注三点: 1)链接是否按照既定指示那样,确实链 ...

  3. (转载)关于web端功能测试的测试方向

    一.功能测试 1.1链接测试 链接是web应用系统的一个很重要的特征,主要是用于页面之间切换跳转,指导用户去一些不知道地址的页面的主要手段,链接测试一般关注三点: 1)链接是否按照既定指示那样,确实链 ...

  4. Web测试的常用测试用例与知识

    1. Web测试中关于登录的测试 2. 搜索功能测试用例设计 3. 翻页功能测试用例 4. 输入框的测试 5. Web测试的常用的检查点 6. 用户及权限管理功能常规测试方法 7. Web测试之兼容性 ...

  5. web测试常用的用例及知识

      1.      Web测试中关于登录的测试... 1 2.      搜索功能测试用例设计... 2 3.      翻页功能测试用例... 3 4.      输入框的测试... 5 5.    ...

  6. app测试与web测试的区别

    1.从功能测试的来讲的话,在流程和功能测试上是没有区别的.系统测试和一些细节可能会不一样. 那么我们就要先来了解,web和app的区别. web项目,一般都是b/s架构,基于浏览器的,而app则是c/ ...

  7. 关于web测试

    关于web测试1页面部分(1) 页面清单是否完整(是否已经将所需要的页面全部都列出来了)(2) 页面是否显示(在不同分辨率下页面是否存在,在不同浏览器版本中页面是是否显示)(3) 页面在窗口中的显示是 ...

  8. Web 测试经验总结

    Web功能测试常用方法 1.页面链接检查每一个链接是否都有对应的页面,并且页面之间切换正确: 2.相关性检查删除/增加一项会不会对其他项产生影响,如果产生影响,这些影响是否都正确. 3.检查按钮的功能 ...

  9. 【转】web测试内容及工具经典总结

    基于Web的系统测试在基于Web的系统开发中,如果缺乏严格的过程,我们在开发.发布.实施和维护Web的过程中,可能就会碰到一些严重的问题,失败的可能性很大.而且,随着基于Web的系统变得越来越复杂,一 ...

随机推荐

  1. CSS3——transform2D的应用

    前言: 关于CSS3,我想最让人感到有意思的就是2D和3D的技术,这让我们的网页立马丰富起来,可以让我们完成一些很酷很炫的效果,比如旋转木马.经过一段时间的学习,让我对CSS3有了更近一步的了解,在此 ...

  2. java读取txt文件,对字符串进行操作后导出txt文件

    嘿嘿,代码略为简单,不再多做解释,直接上码! package org.lq.com.util; import java.io.File; import java.io.InputStreamReade ...

  3. spring的事务传播行为

    1.PROPAGATION_REQUIRED:如果当前没有事务,就创建一个新事务,如果当前存在事务,就加入该事务,该设置是最常用的设置. 比如说,ServiceB.methodB的事务级别定义为PRO ...

  4. linux设置静态获取ip

    vsphere client 创建虚拟机后,默认是动态获取ip ,如果想要改为静态ip: 修改网卡eth0 (不一定每个人都是eth0,比如有的是ens160) vim /etc/sysconfig/ ...

  5. JS实现九九乘法表和时间问候语

    编码 小练习,练习使用循环实现一个九九乘法表 第一步,最低要求:在Console中按行输出 n * m = t 然后,尝试在网页中,使用table来实现一个九九乘法表 <!DOCTYPE htm ...

  6. HTML5特效~3D立方体旋转

    先欣赏一下该特效的最终效果 本文源码参考自http://www.cnblogs.com/ECJTUACM-873284962/进行一点点优化,下面是对此特效原理上的的剖析. 该特效是基于Css3的一些 ...

  7. Mybatis学习随笔

    学习Mybatis路径(适合有java基础和mysql基础的小伙伴) 1.把项目搭建起来,跑一跑感受一下 2.测试基本映射 3.测试高级映射 4.测试动态sql 5.学习懒加载与缓存 6.与sprin ...

  8. Spring中无法访问resources目录下页面或静态资源

    1.新建项目,在 resources 目录下创建 views 目录,在 views 目录下创建 index.html 页面,项目跑起来,浏览器访问页面,提示找不到页面之类的错误提示. 2.再尝试访问图 ...

  9. ueditor默认字体和字号修改

    ueditor编辑器默认字号是16号,默认字体为sans-serif,显得有些难看,所以决定修改默认值.配置文件ueditor.config.js可以修改整个编辑器配置项,里面有配置项fontfami ...

  10. CentOS 7 下 安装Webmin 启动防火墙失败----Applying firewall rules:iptables-restore:line 2 failed

    最近学习CentOS 7 系统管理,使用的是<CentOS 6.X系统管理实战宝典>一书------因为网购的CentOS 7 的书还没有送到 O(‘  ’!!)O~ (1)先使用yum方 ...