可测试性战术的目标是允许在完成软件开发的一个增量后,轻松地对软件进行测试。
1、记录/回放(Record/playback ):记录/回放是指将捕获跨接口的信息,并将其作为测试专用软件的输入。
例如数据库的异常响应,try catch语句捕获异常信息:
public static Connection getConn () { Connection conn = null; try { Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection(db_url, db_user, db_pass); } catch (Exception e) { e.printStackTrace(); } return conn; }
2、将接口与实现分离(Separate interface from implementation ):将接口与实现分离允许实现的代替。占位实现允许在缺少被占位组件时,对系统的剩余部分进行测试
学过设计模式后就知道,写程序要高内聚低耦合,编码的原则要实现单一职责原则。
例:利用servlet实现接口隔离
private void xiugai(HttpServletRequest req, HttpServletResponse resp)throws IOException, ServletException { // TODO Auto-generated method stub req.setCharacterEncoding("utf-8"); List<Javabean> javas = dao.list(); //实例化dao层的list req.setAttribute("javas", javas); //可能前者相当于name,后者相当于value。 req.getRequestDispatcher("xiugai.jsp").forward(req, resp); }
3、特化访问路线/接口:具有特化的测试接口允许通过测试工具并独立于其正常操作,来捕获或指定组件变量的值
组件可以根据内部状态实现战术,以支持测试过程。
内部监视器(Built-in monitors ):组件可以维持状态、性能负载、容量、安全性或其他可通过接口访问的信息。当监视状态被激活时可以记录事件。
原文:https://www.cnblogs.com/jmdd/p/12418204.html