zoukankan      html  css  js  c++  java
  • 自动化测试思考1

    前些日子,CTO给我下达了对成熟模块进行自动化测试的任务。要求抛离开工具,做一些自动化测试。没有思路和方向,自己开始在上网查阅些资料,看了一些将手动测试转变自动化。无异于就是手动写脚本测试,实现工具能完成的功能。得到这个点,开始定位、摸索和实践。

    从概念入手进行剖析,对于自动化测试的概念,网络上可以说是多如牛毛,自己还是比较倾向于:用工具或编码模拟人工操作,记录结果并和预先设定的结果进行比较,而达到测试的目的!

    从公司产品进行入手,公司的产品架构为LAMP(Linux+Apache+Mysql+Php),以网站为主要产品。

    得到以上信息和需求定义后,开始着手操作,总共思路有二:

    第一 网站的测试

    第二 类和方法的测试

    先说第一 网站测试:

    进行网站测试,以百度为例,提供入口,要求用户输入网址

    显示如下:

    很简单的一个入口

    代码如下:

    <form id="UrlForm" name="UrlForm" method="post" action="test2.php">

      请输入链接:

      <label>

      <input name="Url" type="text" id="Url" value="http://" />

      </label>

      <input name="提交" type="submit" id="提交" value="提交" />

    </form>

    用户输入www.baidu.com后,自动跳转到test2.php进行处理

        

        思路:把搜索的关键字 存在数据库中,通过调用数据库,达到自动读取关键字,并通过打开页面,进行搜索,然后对搜索的页面 进行数据抓取 并输出结果

        显示如下:

        

    代码如下:

    <?php

    //error_reporting(E_ALL);

    require_once "conn.php";//与数据库连接

    $mysql="select LK_Name from links"; //搜索出数据库中的值

    $result=mysql_query($mysql);

    $thurl=$_POST['Url'];

    if($num=mysql_num_rows($result)){

    while($row=mysql_fetch_array($result)){

    $ie = new COM("InternetExplorer.Application");

    $ie->Visible = True;

    //$ie->Visible = False;

    $ie->Navigate($thurl);

    //echo '<pre>';var_dump($ie);

    while($ie->Busy)

    {

    com_message_pump(4000);

    }

    $ie->document->all->f->wd->focus();

    $ie->document->all->f->wd->value = $row['LK_Name'];

    $kd=$ie->document->all->f->wd->value;

    $ie->document->all->f->submit();

    //echo '<pre>';var_dump($ie);

    //exit;

    //$ie = null;

    if (!($contents = file_get_contents("".$thurl."/s?wd=".$kd."")))

      {

       //echo $contents;

        echo 'Could not open URL';

        exit;

      } 

    if (preg_match_all("|$kd|",$contents,$matches))

     {

        //echo '<pre>';var_dump($matches);

       for($i=0;$i<count($matches[0]);$i++){

    //exit;

    print "A match was found:".$matches[0][$i];

    echo "<br />";

    }

    echo count($matches[0]);

    echo "<br />";

     } else {

        print "A match was not found.<br />";

     } 

    }

    }

    ?>

       第二 对方法和类的测试

       

        通过调用写好的类中的方法,实现对数据库中的值进行计算,并把该方法得到的值 存入数据库中,和预先设置的值进行对比 然后输出正确和错误的结果!

       先写一个方法,以加法为例,命名为add.php

      代码如下:

      <?php

    class add

    {

        function Num_Add($i,$j)

        {

           return $i+$j;

        }

    }

      

    ?>

    读取数据并插入到表中,代码如下:

    <?php

    require_once "add.php";

    require_once "conn.php";

    $mysql="select T_ID,A_Data,B_Data,A_Result,V_Result from test";

    $result=mysql_query($mysql);

    if($num=mysql_num_rows($result))

    {

    while($row=mysql_fetch_array($result)){

    $abc=new add;

    $a=$abc->Num_Add($row['A_Data'],$row['B_Data']);

    $updatesql="update test set A_Result='".$a."'where T_ID='".$row['T_ID']."'";

    mysql_query($updatesql);

    }

    }

    echo "<script>alert('计算结束!');location.href='validtae.php';</script>";

    ?>

    进行对比,代码如下:

    <?php

    require_once "conn.php";

    $mysql="select A_Result,V_Result from test";

    $result=mysql_query($mysql);

    if($num=mysql_num_rows($result))

    {

    $correct=0;

    $worng=0;

    while($row=mysql_fetch_array($result))

    {

    if($row['A_Result']==$row['V_Result'])

    {

    $correct++;

    }

    else

    {

    $worng++;

    }

    }

        echo "正确数据有:".$correct."条!";

    echo "<br>";

    echo "错误数据有:".$worng."条!";

    }

    ?>

  • 相关阅读:
    《四世同堂》金句摘抄(一)
    Django打造在线教育平台_day_3: 搭建后台管理系统Xadmin之其他app的数据表注册
    Django打造在线教育平台_day_3: 搭建后台管理系统Xadmin
    Django打造在线教育平台_day_3: 搭建后台管理系统Django自带的admin
    Django打造在线教育平台_day_2:新建operation app 编写models
    Django打造在线教育平台_day_2:新建organization app 编写models
    Django打造在线教育平台_day_2:新建courses app 编写models
    Django打造在线教育平台_day_2:新建users app 编写models之完善
    Django打造在线教育平台_day_2:新建users app 编写models之扩展user表
    Django打造在线教育平台_day_1:开发环境与项目的搭建
  • 原文地址:https://www.cnblogs.com/mengxiao1001/p/1751281.html
Copyright © 2011-2022 走看看