51Testing软件测试论坛

标题: loadrunner 进行性能测试,在这个过程中进行了保存操作,那么系统数据库中是否会保存? [打印本页]

作者: testing    时间: 2005-2-3 19:55
标题: loadrunner 进行性能测试,在这个过程中进行了保存操作,那么系统数据库中是否会保存?
loadrunner 进行性能测试,在这个过程中进行了保存操作,那么系统数据库中是否会保存?
作者: pcl2004_27    时间: 2005-2-3 20:00
性能测试中loadrunner作为性能测试工具,他是模拟虚拟用户操作,也就是进行性能测试的过程中,他只是模拟客户端操作,发送消息给服务器,然后等待服务器相应,也就是得到我们知道的系统响应时间!
那么这个过程中他不会真的去执行这个操作,比如说保存操作,所以通常情况下我们很多在测试的时候发现,有的时候可以保存,有的时候不能保存数据!或者部分不存数据!
我们只要知道loadrunner只负责是否成功对服务器进行了“施压“,是否得到了响应的时间就可以了!
作者: sunshinelius    时间: 2005-2-3 21:09
呵呵,站长发话,赶快出来说几句
pcl说得没错,这些保存操作未必能够录到,就算录到也不一定能够真实执行。这和vu判断回放成功与否的标准有关,比如socket脚本,vu只是把接收的数据和录制的数据对比,如果大小一样,就回放成功,而不是要接收到本地,也就是说这个动作在内存中比较完了就算拉到了。呵呵。
作者: 司空公子    时间: 2005-2-3 21:44
哈,难怪用loadrunner模拟了100个用户操作的时候,最后数据库中保存下来的数据就那么点,现在终于知道了。
作者: baitest    时间: 2005-2-3 21:54
标题: 几位版主说的有道理!
不过,在性能测试中,如果你先将loadrunner和TD连接成功的话,并在TD中执行的话,测试出的数据也会保存在数据库中的;如果,只是在loadrunner中执行,那么数据库保存的数据会有很大的不同,有时可以,有时不可以,有时只有那么一点点!!
作者: wghong    时间: 2005-2-4 11:54
更明确一点,我认为楼上的朋友说的 都应该是LR模拟的部分的数据保存处理,比如 web 方面的测试,模拟的是客户端浏览器。LR 只是对 客户端得到的数据在内存中进行比较。但是,对于系统而言,一般系统数据库属于后台或者是服务器方面的部分,LR模拟的数据应该是在这样的系统数据库中有数据记录下来的。我是这样认为的。几位版主,不知道是不是这样?请说明一点。
作者: sunshinelius    时间: 2005-2-4 12:24
wghong说得对。
远程的操作是真实的,而本地的处理可能是模拟的。这两部分要分开的。
作者: xingcyx    时间: 2005-2-5 09:26
反复看了几遍,越看越糊涂。“那么这个过程中他不会真的去执行这个操作”,真的是这样吗?我觉得有点问题。照这样说来,LR只能测试性能方面的问题,而不会去验证操作的正确性。因为我们知道,即便单用户对数据库的写入操作是成功的,当用户并发对数据库的同一张表同时写入的时候,很可能会出现问题。而我们利用测试工具,有很大一方面是要验证这些问题。如果真是像版主说的那样,那么这些问题将无法利用LR验证。因此对此我存有很大的疑问,还望版主再详细说明。谢谢!

PS。pcl兄现在好忙,本来这次我去上海做性能测试,想找你帮忙的,结果发现没时间。:(
作者: wghong    时间: 2005-2-5 09:45
楼上的似乎没有注意我说的那一点。“那么这个过程中他不会真的去执行这个操作“主要是指在客户端的,是LR模拟的 部分。我们用LR模拟客户端来对系统性能进行测试,LR模拟客户端关心的是客户端向系统服务器发送出去的数据,而更多的一些服务器送给客户端的数据,LR只在内存中进行检查验证,但并不关心在客户端的完整实现。比如服务器在客户端存入一些数据,LR可能会把接收的数据在内存中进行验证比较,但是它最终是否把这些数据存入客户端,可能发生”这个过程中他不会真的去执行这个操作”的情况。
相反,楼上的说的“当用户并发对数据库的同一张表同时写入的时候”的情况,如果这个表是在服务器数据库的,这个操作是会真正执行的。因为 LR模拟的是客户端,客户端真正向数据库中写入了数据,这些数据的写入操作是服务器数据库在执行,与LR并不是直接相关的。说穿了,LR只是在整个系统中代替了系统的一部分,在LR没有代替的系统部分,任何操作都将是真实完整的。我是这样认为的
作者: sunshinelius    时间: 2005-2-5 13:40
没错, wghong已经说得很清楚了。
作者: xingcyx    时间: 2005-2-6 09:05
wghong说的就比较容易理解了,忽忽~~
但是看楼主的问题和pcl的回答,并没有指明是对客户端的呀,还是有点疑惑。
不知道他们俩真正的意思是什么。
作者: viviv_wang    时间: 2005-12-6 17:45
清楚就行了,天机不可泄露。
作者: wyjzjwyj    时间: 2006-1-9 19:28
不好 意思哦,不知道你们说得存到数据库中是不是指存在了数据库的表中,我所测的是一个计费系统,录制了一段添加用户的脚本,并对用户名和 密码进行了参数化,并设置场景进行回放脚本,运行完成后,发现添加了好多用户,不知道这算不算保存到数据库中去了?
我是初学者,其中好多东西还没有搞清楚是干吗的,各个部分之间的功能及它们之间的相互关系也不是太清楚,恳请各位给予指点,谢谢
作者: zhoward    时间: 2010-6-8 18:01
不好意思,把这么老的资料翻出来,实在是遇上问题不得不求救。
系统简介:c/s结构,属于订单投放系统,投放订单时需要占用到时间序段。多人投放订单时,如果多人用到同个时间序段,然后提交,只有最早提交的人可以通过,而其他人会出来错误提示,因为所选的时间序段已经被占用并提交。投完订单后,在数据库会生成相应的记录。

现使用lr9.5+window sockets并发20人录制订单投放情况,发现事务全部通过,但是数据库却没有查到记录产生。
我的问题:
1. lr是仅仅来模拟客户端操作,还是会往数据库写入数据?
2. 如果确定可以写入数据,那么对于我这个情况,是否就无法来测试订单投放的性能测试?




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2