Web应用程序整体测试基础——单元测试
近年来,随着基于B/S结构的大型应用越来越多,Web应用程序测试问题也在逐步完善中。但Web应用程序测试既可以在系统开发中实施,也可以独立于系统单独完成,这取决于Web应用程序的复杂性和多样性。同时程序整体测试工作也是一个庞大的工程,而要完成大工程目标,基础是必不可少的。
系统开发中,功能模块是指导完成目标的大纲。程序整体测试大致包括功能测试、性能测试和安全测试,其中功能测试是前提。结合系统开发与程序测试,不难看出单元测试作为功能测试核心,便是程序整体测试的基础。
单元测试通常是指对程序中最小可测试单元就行验证和检查,甚至是指一个函数或类。Web应用程序中的单元测试,这可以看着是对一段有明确功能的代码,这个功能是依附于功能模块需求的。
程序员大多擅长编程,而对程序测试或单元测试不注重,甚至不理解。惯性的程序员思维是可以正常运行作为不测试的借口。而对单元测试的藐视,将会直接导致程序上市推迟。理由便是积少成多的程序BUG,众多的BUG也是性能测试与安全测试的拦路者。因此程序员懂得单元测试,并用于时时功能开发中是很有必要的。
市面上有很多帮助程序员在开发中完善代码,辅助测试的工具。Web应用程序因其开发语言众多,工具也是繁多。但作为程序员应该或多或少会使用这些工具。
对于代码生成器理解,多数程序员是有抵抗情绪的,因为很多程序员理解这是方便开发了,可傻瓜化了思维。就我理解,这是庸人自扰的表现,优秀的代码更利于理解和集成,对于傻瓜化思维的说法,是不成立的。对于市面上优化的工具使用(如ReSharper、JustCode )结合代码覆盖工具(如IntelliSpell、PureCoverage)来做会更完美。
PS:很多这方面的工具,程序员可以根据自己开发语言来选择。
程序员编程中,对功能的单元测试。除了资深工程师能结合需求与环境来就行多样性单元测试,其他程序员借助工具也是能完成的。借助工具(如Parasoft旗下产品)能及时防御并发现错误,并能测试功能代码与数据库表的关系机制,实现优化。
值得注意的是,Web应用程序的高速发展,对开发者来说是挑战也是机遇。而完善测试机制是重要筹码。程序员更是要理解单元测试的重要性,作为整体测试的基础,当然是越牢固越好。
Web应用程序整体测试基础——单元测试的更多相关文章
- [原创]Burp Suite web应用程序渗透测试神器
[原创]Burp Suite web应用程序渗透测试神器 一 Burp Suite介绍 Burp Suite是Web应用程序测试的最佳工具之一,其多种功能可以帮我们执行各种任务.请求的拦截和修改,扫描 ...
- ADF_Starting系列9_使用EJB/JPA/JSF通过ADF构建Web应用程序之测试J2EE Container
2013-05-01 Created By BaoXinjian
- web简单的整体测试
网站性能压力测试是性能调优过程中必不可少的一环.只有让服务器处在高压情况下才能真正体现出各种设置所暴露的问题 ab测试 ab命令会创建很多的并发访问线程,模拟多个访问者同时对某一URL地址进行访问.它 ...
- Web下的整体测试 --性能测试及优化思路
随着Internet的日益普及,现在基于B/S结构的大型应用越来越多,可如何对这些应用进行测试成为日益迫切的问题.有许多测试人员来信问我B/S的测试如何做,由于工作较繁忙,对大家提出的问题也是头痛医头 ...
- Web应用程序完全测试指南
随着Web技术和移动互联网的发展,越来越多的应用被迁移到了云端,这也使得用户可以随时随地使用它们.目前大量的优质应用,逐渐提升了用户的品味,也降低了用户的容忍度,如果你的Web应用无法使用户满意,那么 ...
- 黑客攻防技术宝典Web实战篇(一)Web应用程序技术基础
在开展Web应用程序渗透测试之前请先了解下面列出的这些内容,如果不是很懂的话,请读David Gourley & Brian Totty的HTTP权威指南也叫HTTP:The Definiti ...
- web应用程序测试方法和测试技术详述
1.界面测试 现在一般人都有使用浏览器浏览网页的经历,用户虽然不是专业人员但是对界面效果的印象是很重要的.如果你注重这方面的测试,那么验证应用程序是否易于使用就非常重要了.很多人认为这是测试中最不重要 ...
- 玩转Django2.0---Django笔记建站基础十(一)(常用的Web应用程序)
第十章 常用的Web应用程序 Django为开发者提供了常见的Web应用程序,如会话控制.高速缓存.CSRF防护.消息提示和分页功能.内置的Web应用程序大大优化了网站性能,并且完善了安全防护机制,而 ...
- 玩转Django2.0---Django笔记建站基础十(二)(常用的Web应用程序)
10.3 CSRF防护 CSRF(跨站请求伪造)也成为One Click Attack或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用,窃取网站的用户信息来制作 ...
随机推荐
- HTML DOM nodeName nodeValue
在javascript在,我们得title在标签和文本,它们通常要求这样做 var obj =document.getElementsById("id1"); obj.nodeNa ...
- 【Eclipse高速发展-文章插件】google V8,对于调试Nodejs
安装的的时候能够通过 Help>Eclipse Marketplace的 搜索方式安装 或者 Help>Install New Software Name:googleV8 Locatio ...
- MVC 分离Controllers-Views
将MVC中的Controllers.Model和View分别放到单独的项目中 Model: 新建-项目-Windows-类库 MVCTest.Model Controller:新建-项目-Window ...
- (一个)AngularJS获取贴纸Hello World
一旦项目使用JQuery原创javascript,最近参加了一个项目,需要使用AngularJS.RequireJS比较框架,如汰渍.这里写一些博客,记录自己的学习过程,虽然冠以原来的名字,实际上都是 ...
- Unable to load Virtual engine
相关:GenyMotion自带VirtualBox 解决办法:首先确认genymotion及virtualBox正确安装,然后右键点击启动程序选属性,在兼容性里选以兼容模式运行,同时勾选以管理员身份运 ...
- LinbDesk --- 新的extjs4.2 desktop demo : 技术交流Q群:336584192
很多朋友对extjs desktop感兴趣,就在原来简单的dsktop基础上,作了很多拓展 主要例如以下: 软件更新情况介绍: LinbDesk 拓展自Extjs 4.2的桌面Demo 拓展代码适用 ...
- 采用Visual Stuidio 2010 创建网站栏
采用Visual Stuidio 2010 创建网站栏 Visual Stuidio 2010 该项目模板使创建网站栏/内容类型和列表变得非常方便. 1. 管理员身份打开Visual Stuidio ...
- CocoaChina 第四个测试
1. iOS同意近期本地通知数量最大为多少? A.64 B.32 C.128 D.16 2. int x = 1; int y = 2; int z = x^y*y; NSLog(@"%d& ...
- 每天一个JavaScript实例-canvas绘图
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- Google I/O 2014? No,Android I/O 2014
"你当然能够不相信理想,可是你也应该相信.有一些人相信理想" google I/O今日公布了很多新品,罗列为: Android Wear,Android Auto.Android ...