zoukankan      html  css  js  c++  java
  • 《软件测试》实验五

    《软件测试》实验

    实验五 测试技术                                                       

    实验目的

    (1) 根据实际情况,综合应用各种软件测试技术

    (2) 熟练掌握MyEclipse+Junit的Java编程和单元测试

    实验内容

     

    一、 找出函数中存在的问题。以下题目均在Lab05项目中完成。

    1、 请给MySQLConnBean.java中的类和每个方法都加上注释

    package org.easybooks.bookstore.jdbc;

    import java.sql.*;

    /*

     * 功能:jdbc连接数据库

     * */

    public class MySQLConnBean {

    private Statement stmt=null; //定义执行sql语句变量

    private Connection conn=null; //定义执行数据库连接变量

    private ResultSet rs=null; //定义结果变量

    public void openConn() throws Exception {//根据用户名和密码连接数据库

    Class.forName("com.mysql.jdbc.Driver");

    String url="jdbc:mysql://localhost:3306/test";

    String user="root";

    String password="123456";

    conn=DriverManager.getConnection(url, user, password);

    }

    public ResultSet execQuery(String sql){//获得传入的sql语句并执行

    rs=null;

    try{

    stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);

    rs=stmt.executeQuery(sql);

    }catch (SQLException e) {

    System.err.println("Data.executeQuery:"+e.getMessage());

    }

    return rs;

    }

    public void closeStmt(){ //关闭数据库连接

    try{

    stmt.close();

    }catch(SQLException e){

    System.err.println("Data.executeQuery:"+e.getMessage());

    }

    }

    public void closeConn(){ //关闭数据库连接

    try{

    conn.close();

    }catch(SQLException e){

    System.err.println("Data.executeQuery:"+e.getMessage());

    }

    }

    }

    2、 找出项目中存在的缺陷,并给出解决的方案(至少3个,不包含下面那个举例)。

    说明:这里所说的缺陷不一定都是错误,而是明显需要改进的地方。

    如:不可以无限输入密码,容易被暴力破解,存在安全隐患。

    解决方案:密码输入3次错误,关闭浏览器。最好再加上验证码。

    解:

    1. 密码没有加密,不需要登入就可以进入JSP文件。

    2.程序设计要有好的业务逻辑的话就要运用mvc三层架构。

    3. validate.jsp没有校验用户是否输入数据和数据的输入类型是否符合要求,需要在接受参数前加入判断语句。

    二、 请按要求对下面的Java代码进行测试。代码的功能是:用折半查找法在元素呈升序排列的数组中查找值为key的元素。  

    (1) 要求采用基本路径法给出程序控制流图;

     

    (2) 算出环路复杂性

    16-14+2=4

    (3) 给出所有的独立路径,以及对应的测试用例和预期结果

    路径1:1-2-3-13-14

    测试用例: (array[0]={}  key=1)     

    预期结果:-1

    路径2:1-2-3-4-5-6-7-12-4-13-14

    测试用例: (array[3]={2,4,6}  key=4)    

    预期结果:1

    路径3:1-2-3-4-5-6-8-9-12-4-13-14

    测试用例: (array[4]={2,4,6,8}  key=2)   

    预期结果:0

    路径4:1-2-3-4-5-6-8-10-11-12-4-13-14

    测试用例: (array[4]={2,4,6,8}  key=6)    

    预期结果:2

  • 相关阅读:
    U盘量产体验
    syn/ack攻击
    [转]Moment of inertia of a uniform hollow cylinder
    [转]从技术角度分析星际2
    [转]SCI绝不能抄袭别人的工作
    利用代数方法进行相交检测
    【原创】凝思磐石Linux操作系统,X桌面打开方法
    【原创】Oracle数据库逻辑迁移步骤
    【原创】sybase IQ数据库启动参数——START_ASIQ参数列表
    【原创】ORACLE数据库管理方法学习总结
  • 原文地址:https://www.cnblogs.com/Zenith1/p/5496375.html
Copyright © 2011-2022 走看看