如何测试现代angular应用程序的性能/负载
我想加载/性能测试,使用Angular 6+作为前端框架的Web应用程序.该应用程序很大,并且使用了许多向导/模式等. 我想做一些"真实" E2E-FRONTEND测试(不仅是测试API呼叫,还可以测试JS渲染等) ) 当前的测试应用程序的最新方法和工具是什么? 要清除,我想做一些真正的E2E性能测试,例如在无头模式下打开浏览器,打开一个向导,并获得时间到向导出现的时间.像硒的前端测试一样.我也可以使用硒来做到这一点,但我不知道它是正确的工具. 解决方案 测试客户端性能的最佳方法是使用如果要自动化该过程 - 应该选择浏览器自动化框架,最受欢迎的是 selenium .您还将能够执行我还建议您保持心态的服务端性能,即,您可能需要检查您应用的并发用户可以在没有问题的情况下处理的饱和点/第一个瓶颈是什么,当响应时间开始增加或错误开始发生时.因此,请考虑将客户端性能测试与将预期的负载进行在您的应用程序上进行,因为从客户端的角度渲染非常快,但是服务器响应缓慢而导致不良的用户体
0 2024-02-20
编程技术问答社区
使用亚马逊免费层级的带机枪的蜜蜂
我一直在尝试使用带有机枪的蜜蜂 据我了解, 这只是一个使用AWS创建EC2实例(BEE)的面料脚本,以对目标进行分布式负载测试(网站). 这些是我采取的步骤: .去了AWS IAM并创建了一个新用户,并分配给具有管理权限的组: { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "*", "Resource": "*" } ] } .此用户的创建给了我AWS_ACCESS_KEY_ID和AWS_SECRET_ACCESS_KEY. .我使用这些凭据创建了一个.boto文件,然后将其放置为: [Credentials] aws_access_key_id=##### aws_secret_access_key=### [Boto] ec2_region_name = us-west-2b ec2_reg
2 2024-01-26
编程技术问答社区
Locust.io: 控制每秒的请求参数
我一直在尝试使用locust.io在EC2计算优化实例上加载API服务器.它提供了一个易于配置的选项,用于设置连续请求等待时间和并发用户的数量.从理论上讲, rps = 等待时间 x #_-用户.但是,在测试时,此规则的阈值分解为 #_用户(在我的实验中,大约有1200个用户).变量 hatch_rate , #_ of_slaves ,包括在A 分布式测试设置中对 rps 几乎没有影响. 实验信息 该测试已在具有16个VCPU的C3.4X AWS EC2计算节点(AMI图像)上进行,并具有一般SSD和30GB RAM.在测试期间,CPU利用率以最大60%的峰值达到峰值(取决于孵化速率 - 控制同时发生的过程),平均停留在30%以下. locust.io 设置:使用PYZMQ,并将每个VCPU核心作为从设置.带有请求主体〜20字节的单个邮政请求设置,响应主体〜25字节.请求故障率: 变量:连续请求之间设置为450ms(最小值:100ms和最大:1000ms)的时
10 2024-01-25
编程技术问答社区
我可以为我的RDS实例使用亚马逊ELB进行负载平衡吗?
我有两个问题: 我可以在我的RDS实例上使用ELB进行负载平衡吗? 我可以在EC2实例上安装多个服务器并为所有服务器运行单个ELB实例吗? 解决方案 1-如果您的意思是只有一个RDS实例,则在其前面的负载平衡请求没有意义.如果您的意思是拥有一个以上的RDS实例,那么加载余额请求也没有多大意义,因为您的数据库服务器很可能在给定时间点具有不同的数据.我可以看到此规则的唯一例外是您是否具有仅阅读的RDS实例.在这种情况下,您可能会受益于将ELB(S)放在他们面前.如果您的应用程序是写入的,则应使用较大的RDS实例或移至NOSQL数据库.不要尝试将余额请求加载到读/写DMB,因为您必须自己处理同步和许多其他(非平凡的)方面. 2年,这是完全可行的.当然,对于Web服务器.通常不适合DBMS. 其他解决方案 尽管将ELB连接到RDS的所有原因,AWS并未提供将ELB连接到当前RD的功能. ELB仅与EC2实例一起工作. 是/否,您可以在EC2实例上安装不同的
2 2024-01-24
编程技术问答社区
如何将25k的记录放到kinesis流中,并测试工具来确认它。
我已经开发了一个软件,该软件将记录写入Amazon Kinesis流网络服务.我试图了解我们有任何软件工具,这将使我能够在一秒钟内测量我的代码生成1片的最大吞吐量. 是的,我确实同意这也取决于硬件配置.但是对于开始,我希望o通用机器,那么我可能会看到水平可伸缩性 这样,我试图获得每秒25k记录,以写入Kinesis流 参考:kinesis 解决方案 我相信您可以使用 apache jmeter 为 下载并安装Jmeter 下载使用 jsr2223 sampler sampler =" https://github.com/aws/aws-sdk-java/blob/master/src/samples/amazonkinesis/amazonkinesisrecordproducersample.java" rel =" nofollow"将写下记录 请参阅 beansshell vs jsr223 :您一直在等待的性能!指南的指南,有关安装" Groovy"
0 2024-01-24
编程技术问答社区
使用JMeter进行性能测试
我正在为我们的Web应用程序编写一个测试,但是有一个页面加载,然后使用Extjs库进行AJAX调用以加载额外的件,我需要知道该件何时加载.我应该怎么做? Jmeter可以支持Extjs库吗?我还需要知道什么? 搜索互联网,我找到了一些Ajax和Jmeter资源以及一些Extjs和Jmeter来源,但是我还没有在一个地方找到所有三个. 预先感谢! 解决方案 Jmeter的HTTP请求在HTTP协议级别上工作.它 rel="nofollow">对您的JS和AJAX不了解.但是,它可以发送任何HTTP请求,包括Ajax One. 因此,当您执行涉及EXT JS的事情并在Jmeter中创建此类请求时,您应该查看什么请求会发送浏览器.为此,您可以使用 htttp Proxy Server 您的浏览器. 注意:实际上jmeter通过BSF支持支持JavaScript执行(例如,例如,例如,在
2 2024-01-21
编程技术问答社区
用于Ajax负载测试的工具
似乎有很多支持AJAX的压力/负载测试工具. 我想知道这些工具实现了如何. 他们仅记录HTTP请求并重播吗? 这是测试Ajax应用程序的正确方法吗? Google如何测试他们的Ajax应用程序? 解决方案 如果您只担心功能,则类似 watir , selenium "> selenium 或任何功能工具都可以起作用.只要您在功能测试中放置足够的时间以允许AJAX回调,那就可以解决问题. 添加我的回应, 如果您在谈论单位测试您的JavaScript,则可以使用Lostechian pure Concidence,同一个人发布了Qunit Testing博客文章昨天刚刚发布了一篇关于这个主题 其他解决方案 大多数负载测试工具都以相同的方式进行AJAX负载测试:他们执行在"记录"阶段中看到的原始HTTP流量(可以是页面请求,图像请求,甚至是Ajax要求).它们之间的主要区别是他们的录音机/IDE工具的良好程度以及它如何帮助您参数化HTTP请求,从而根据动
0 2024-01-21
编程技术问答社区
通过JMeter对AJAX调用进行性能测试
我正在为具有AJAX调用的应用程序进行性能测试.我能够记录相同的请求,但无法执行它们.谁能帮助我执行AJAX请求,请? 我需要使用任何额外的插件吗?如果是,它们是什么以及我如何使用它们. 解决方案 这个对我们有用 - 我们只是将多个HTTP Request直接放在它下面: 从链接: 图像的注释: 该控制器的所有直接子元素将作为并行执行. 其他解决方案 我不知道能够处理AJAX调用的任何现有插件.从技术上讲,AJAX请求是基本的HTTP请求,但需要使用每个呼叫的一个额外线程并行执行它们. 目前无法在Jmeter中放置嵌套线组,因此您必须使用 jsr223采样器启动ajax请求.主要请求和嵌套ajax调用应在看起来像真实的控制器 - 浏览器行为. 另外,您可以开发自己的Jmeter采样器,该采样器将能够产生额外的线程以模拟AJAX请求. 有关上述两种方法的详细信息,请参见如何加载测试AJAX AJAX/XHR启用了Jmeter 指南.
8 2024-01-20
编程技术问答社区
运行负载测试时,如何将VUsers分散到多个测试代理上
我正在尝试在Visual Studio 2015中运行负载测试.我有1个带有3个测试代理设置的测试控制器.我已经将代理的加权设置为33个,因为我想将用户均匀地分布在它们上.当我运行测试时,我会看到证据表明它在所有3个代理商上都与同一用户登录,并且随着测试的运行,我观察到有1个成功的登录和2个失败/用户,我认为正在发生这种情况,因为他们都尝试一次登录. 如何确保仅将1个Vuser分配给一个代理? (当然1个代理可以有多个用户) 解决方案 将数据源的Access method属性设置为Unique.请参阅
2 2024-01-19
编程技术问答社区
故意放慢HTML/PHP页面加载速度以进行测试
我很好奇是否存在有意减慢页面加载的方法? 我现在正在本地主机上测试我的HTML和PHP页面,我想看看我的加载GIF等在页面加载较慢时的性能. 我意识到这是一个罕见的请求这是为了测试目的. 感谢您的帮助! 注意:我正在在MAMP上进行测试,所以这是Mac OS 10.7 上运行的Apache服务器 解决方案 您可以使用php的 sleep($seconds) 页面加载.但是,您需要转动隐式输出缓冲区泛滥到" on" on" 使用ob_implicit_flush(true);,如果您希望在处理页面之前,请将任何东西发送到用户的浏览器.否则,您的页面在完成加载之前不会有任何内容.一个人打电话就不会做到这一点. 其他解决方案 在Chrome中,您可以模拟与开发人员工具的慢速Internet连接.在最右边的"网络"选项卡下.您可以使用诸如"快速G3"之类的预设,也可以使用精确的数字来上传,下载和ping创建自己的预设. 参考:其他解决方案 Mouss
0 2024-01-11
编程技术问答社区
负载测试中这两种情况的区别
我正在创建一个负载测试,到目前为止,我已经做到了: 线程100 升级时期-100 循环-2 我的理解是,每秒将触发1个线程,并且在完成了第一批100个线程后,将以相同的方式触发100个线程的另一轮,其触发期之间的差异为1秒(与第一个循环相同).它是否正确? 另外,如果我有这样的情况: 线程200 升高时期-200 loop-1 这意味着每秒1个线程,总计200个线程?这等同于第一个情况吗?请帮助,测试时我会得到非常奇怪的结果,因此这个问题 解决方案 nope.第二场景与第一个方案不同. 记住这些(假设选择"延迟线程直到需要") Thread Creation Rate = ( Ramp up Period ) / (No of Threads). Thread is executed independently. 第一个方案: 线程创建率= 1线/秒.每一秒钟,都会创建一个线程.因此,在100秒之后,您将拥有100个线程/用户. 创建
2 2024-01-07
编程技术问答社区
在Jmeter负载测试中无法处理视图/状态和事件验证
我当前正在加载测试.NET Web应用程序.在哪种情况下,用户将登录并执行导航的某些步骤,然后他/她将填写一份评估表,然后从应用程序中注销. 因此,在这种情况下,有很多获取和发布请求.并且,由于其.NET应用程序服务器将使用View-State和_EVENT验证进行一些身份验证.但是要处理那件事,我不确定我需要从哪个请求获取这两个参数并将其传递给哪个请求,因为此情况是get和post请求的组合. 登录(获取) 登录(帖子) 家(获取) 家(邮政) 评估(获取) 评估(帖子) - >它将根据客户名称加载程序列表 评估(发布) - >它将提交客户和程序名称以获取特定评估表格 评估(获取) 评估(职位) 评估(获取) 登录(get) 所以,伙计们帮助我简要介绍了 解决方案 您可以很容易地处理Jmeter中的请求之间的动态邮政参数. 有关ViewState和EventValidation,请在您的Web加载测试中添加两个Regex提取器. Name: Regex Ex
2 2024-01-07
编程技术问答社区
如何对SOAP接口进行加载测试(SOAP函数调用是原子性的吗)?
服务器提供肥皂功能调用接口. 数百人(也许是几千个PC)称呼该功能. 我需要使用一台PC加载该测试. 目前我只有一个循环.足够好吗?如果不是,我该如何使测试更现实? 我曾经想过螺纹,但是如果肥皂功能调用是原子,那就什么都不买.即使确实如此,我的测试器PC上仍然只有一个活动线程(每个CPU). 我希望这很清楚,请询问更多信息,如果不是. 测试此问题,模拟许多PC的最佳方法是什么? 更新,我正在使用VB Express2008.我不敢相信.NET是如此构造,以至于它会在SOAP远程过程的持续时间内阻止CPU ...或者是? 解决方案 使用for循环,您可能仅发出一个同时发生请求.运行循环的线程可能会被阻止,等待响应.请注意,这会阻止线程,但不能阻止整个CPU,这可以由许多线程共享.因此,通过使用多个线程,您可以同时发出多个请求. 现在,服务器上的肥皂处理程序可以单线读取 - 这意味着它只能同时处理1个请求.这可能要小得多 - 因为服务器框架是专
0 2024-01-07
编程技术问答社区
对ZeroMQ(ZMQ_STREAM)进行负载测试,以找到它能处理的最大并发用户数
有人是否有任何现实情况下的情况,可以将测试ZMQ插座负载.他们可以处理的"并发用户"(不是吞吐量)?看起来Zeromq在FD限制方面存在一些严重的问题. 场景是:那里有许多Web服务器框架,它们吹嘘他们可以处理的数百万并发用户 - 现在,如果Zeromq无法处理FD_Setsize否.在任何时间点的用户中,这是对可伸缩性的非常严重的限制(因为FD不仅是过程资源,而且是机器资源,因此在同一台计算机上产生新的过程没有意义). 要验证,我正在尝试加载测试ZMQ_STREAM,以找到可以维持多少并发用户.它是一个简单的" Hello-World"响应服务器,仅在ZMQ_STREAM上听,并为每个请求返回" Hello World"(严格接收,然后发送样式). 现在,在与Jmeter进行测试时(使用用户= 1000),点击断言:zmq_assert (fds.size ()
8 2023-12-26
编程技术问答社区
在SOAPUI请求中,在EndpointDispatcher获得AddressFilter不匹配
如果我通过客户端应用程序使用它,我的服务运行正常.我正在使用相同的WSDL加载肥皂.它已成功为每种方法创建了样本测试.我想发送请求,它应该相应地产生响应.我可以在请求适当的位置中看到正确的端点地址.它自动生成了SOAP XML.如果我尝试运行它以获取响应.它给了我以下错误. http://www.w3.org/2005/08/addressing/soap/fault s:Sender
6 2023-12-21
编程技术问答社区
做wicket框架负载测试的最佳工具?
您可以为使用Wicket Framework开发的Web应用程序推荐一个简单/最佳工具吗? 挑战是每次更改接口ID,因此记录和播放可能无法正常工作.此链接实现并不容易. 解决方案 除了在线服务 browsermob 提供基于云的负载测试基于硒. 其他解决方案 因为像Wicket这样的Web框架在服务器端,但负载测试工具在客户端上运行几乎任何负载测试工具都应完成工作. 可能值得一看,具体取决于您的需求: jmeter - 第一个脚本加载测试工具之一.您可以使用Swing接口通过一些基本操作/验证的单击来对测试进行编程.或者,您可以使用代理录音机节省一些工作. 但是,老实说,这些天的工具不再满足我的需求. Grinder - 一个不错的工具 - 您可以通过Python(实际上Jython)通过Python进行测试案例.这使得复杂的测试方案很容易成为可能.这应该适用于检票口,但是此工具也越来越老. 其他解决方案 从经验来看,上面提到的都不是一见钟
0 2023-12-03
编程技术问答社区
没有全部收到Web Socket消息
我已经使用 alchemy Web插座实现了Web插座服务器,现在正在尝试强调对其进行测试.我已经在C#中编写了以下方法,以创建许多客户端连接到服务器并发送一些数据: private void TestWebSocket() { int clients = 10; long messages = 10000; long messagesSent = 0; String host = "127.0.0.1"; String port = "11005"; WSclient[] clientArr = new WSclient[clients]; for (int i = 0; i
8 2023-12-02
编程技术问答社区
如何进行websockets的负载测试
我们正在构建一个使用WebSocket的组聊天功能.我们想测试当前的不屈服能够支持多少连接. 基本上,它归结为如何模拟Websocket. 解决方案 我可以从我最近的经验中给您一个建议.您可以将基于WebKit的Phantom Virtual客户端连接到您的聊天服务器并测量资源使用情况(即CPU,内存,可能使用Shell脚本或其他实用程序,或者您可以配置您的服务) var system = require('system'); var page = require('webpage').create(); page.viewportSize = { width: 1024, height: 768 }; page.open("", function (status) { // Check for page load success if (status !== "success") {
4 2023-12-02
编程技术问答社区
负载测试/压力测试网络服务
有人知道测试网站服务的负载和压力的好工具吗?我一直在看watir和selenium,但是有更多的网页以中心为中心. 解决方案 这是一些常见的负载测试工具: apache jmeter jmeter grinder httpperff 其他解决方案 您应该确定看一下 soapui . 其他解决方案 我实际上喜欢它是免费的开源,我已经能够将其用于许多项目.
8 2023-12-02
编程技术问答社区
如何使用-header选项,用Siege发送cookies?
我刚刚开始使用Siege在新的Web服务器上进行负载/压力测试.我正在尝试测试我最资源/性能的重型脚本,但是脚本需要cookie.在攻城中使用 - 标题选项的适当格式是什么? 我尝试过没有运气的尝试: 攻城-header =" set-cookie:phpsessid = - cookie---; iptoken = - cookie--" ://www.myurl.com/script.php , 我无法找到有关此的文件,因此任何想法/建议都将不胜感激. 解决方案 答案是使用--header="Cookie: --COOKIE_DATA--"(参考 wiki.wsmoak.net/cgi -bin/wiki.pl?Siege ).
2 2023-12-02
编程技术问答社区