网上购物系统测试报告.doc
网上购物系统测试报告一、题目描述在互联网日益流行的今天,网络已经变的越来越重要,而在网络这个大家庭里,用户商城系统则是一个热点。它具有信息时代的快捷方便等特征。事实上网上购物商城的出现,给消费者的消费观念带来了重要的变化。同时一个用户商城系统是否具有良好的人机界面,其系统最大限度地实现易维护性和易操作性,运行稳定、安全可靠如何,都是用户及运营者所关心的。本次测试就本用户商城系统的用户管理等安全性进行测试。二、测试分析本次我进行测试的是用户商城系统的会员管理:用户在前台注册成功后,管理员可以在该功能项中进行管理。主要是用户在购买商品前需要先进行登录,如果您还未注册会员,需要先进行注册。注册成功后进行登录,登录成功后用户即可购买商品。我所思考的主要是安全性方面,看是否有服务器注入漏洞,是否有Session对象的使用,以及其他的安全性问题。三、 测试设计3.1测试总体结构3.2白盒测试用例设计1.用户在前台注册,在对比数据库中没有相重或不合法的地方后,即提交注册信息,将新用户信息写入数据库。注册代码:public partial class Register : System.Web.UI.Page UserInfoClass uiObj = new UserInfoClass(); public static int G_Int_MemberID; protected void Page_Load(object sender, EventArgs e) protected void btnSave_Click(object sender, EventArgs e) 1. if (txtPostCode.Text.Trim() = "" && txtPassword.Text.Trim()="") 2. Response.Write("<script>alert('请输入完整信息!');location='javascript:history.go(-1)'</script>"); else 3. bool P_Bl_Sex; 4. if(Convert.ToInt32(ddlSex.SelectedItem.Value.Trim()=1) 5. P_Bl_Sex =true ; else 6. P_Bl_Sex =false ; 7. G_Int_MemberID = uiObj.AddUInfo(txtName.Text.Trim(), P_Bl_Sex, txtPassword.Text.Trim(), txtTrueName.Text.Trim(), "", "", txtPhone.Text.Trim(), txtEmail.Text.Trim(), ddlCity.SelectedItem.Text.Trim(), txtAddress.Text.Trim(), txtPostCode.Text.Trim(); 8. Session"Username" = "" 9. Session"Username" =txtName.Text.Trim(); 10. Response.Write("<script>alert('注册成功!');location='index.aspx'</script>"); 1)控制流图2)环路复杂度计算由上图可得,有四条不同的环路,所以环路复杂度为四。3)基本路径集设计基本路径为:A. 1、2、4、5、7、8、9、10B. 1、2、4、6、7、8、9、10C. 1、3、4、5、7、8、9、10D. 1、3、4、6、7、8、9、104)测试用例集设计2.用户登录,用户在注册完后,获取得属于自己的合法身份,即可通过获得的身份进行相应的权限操作。同时也看其是否使用了Session对象对网页的安全性进行进一步巩固,每个用户的操作都有时效限制。登录代码: protected void btnLoad_Click(object sender, EventArgs e) 1. Session"UID" = null ; 2. Session"Username" = null ; 3. if (txtName.Text.Trim() = "" | txtPassword.Text.Trim () = "") 4. Response.Write("<script>alert('登录名和密码不能为空!');location='javascript:history.go(-1)'</script>"); else 5. if (txtValid.Text.Trim() = lbValid.Text.Trim() 6. int P_Int_IsExists = uiObj.UserExists(txtName.Text.Trim(), txtPassword.Text.Trim(); 7. if (P_Int_IsExists = 100) 8. DataSet ds = uiObj.ReturnUIDs(txtName.Text.Trim(), txtPassword.Text.Trim(), "UserInfo"); 9. Session"UID" = Convert.ToInt32(ds.Tables"UserInfo".Rows00.ToString(); 10. Session"Username" = ds.Tables"UserInfo".Rows01.ToString(); 11. Response.Redirect("index.aspx"); else 12. Response.Write("<script>alert('您的登录有误,请核对后再重新登录!');location='javascript:history.go(-1)'</script>"); else 13. Response.Write("<script>alert('请正确输入验证码!');location='javascript:history.go(-1)'</script>"); 1)控制流图2)环路复杂度计算由上图可得,有四条不同的环路,所以环路复杂度为四。3)基本路径集设计基本路径:A. 1、2、3、4B. 1、2、3、5、6、7、8、9、10、11、12C. 1、2、3、5、7、12D. 1、2、3、5、7、8、9、10、11、124)测试用例集设计四、 测试报告五、 测试小结通过本次测试实验,我基本了解掌握了基本的白盒测试方法及测试用例分析方法。本次测试是针对一网上购物系统进行的,网购系统对安全性的要求是很高的,其安全影响方面颇多,真正的网购系统一旦有漏洞所造成的损失将是巨大的。所以,本次所测系统虽小但影响或是说对我的印象是十分深刻的,深深让我体会到了测试工作的重要性。测试工作看着虽小,但实际上他的所负是极为有用的。一系统的问题及改进方向有重大影响与指导,一个合格的软件测试工作者,能为日后软件的维护、服务等都可省却一大笔,为客户、公司避免过大的损失。这次实验后也纠正了我的很多思想,我已不再单纯的认为软件测试比软件开发容易了,在进行测试前,首先必须理解业务和需求。需求和业务理解了,才知道客户想要系统实现什么。然后按照需求来进行测试,不满足需求要求的都可以认为是BUG。虽然在实际工作中,拿到一份完整详细的需求是很不容易的,但要做好一个功能测试,前提就是要对需求比较熟悉,各个业务细节都很了解,甚至做到比开发人员还要了解。 而且对一个软件测试人员最重要的素质要求就是要追求完美,不容许哪些缺点 。实验结束,给了我对软件测试这一行业新的理解,