首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AzureDevOps网络测试中的Regex

AzureDevOps网络测试中的Regex
EN

Stack Overflow用户
提问于 2014-06-09 10:09:31
回答 1查看 1.3K关注 0票数 1

我正在AzureDevOps web性能测试中测试一个场景。我需要从一个页面的响应中提取所有ID。因为有多个is和提取模式是相同的。如何在一个变量中获得所有in?

如果页面响应如下

代码语言:javascript
复制
[ {"Id":20006,"Period":"13-Jul","Territory":"Chicagoelected":true, 
  "Link":"/PSR03/0026-03-a/Web/api/Document/Index/20006",
  "Username":user1,"Viewer":"user1"},
  {"Id":6,"Period":"July2013","Territory":"ChicagoI:false,
  "Link":"/PSR03/0026-03-a/Web/api/Document/Index/6",
  "Username":"user1","Viewer":"user1"},
  {Id:25008,"Period":"13-Jun","Territory":"California",
   "Selected":false,
   "Link":"/PSR03/0026-03-a/Web/api/Document/Index/25008",
   "Username":"user1","Viewer":"user1},
  {Id":25007,"Period":"13-Jun","Territory":"EV,Selected":false,
   "Link":"/PSR03/0026-03-a/Web/api/Document/Index/25007",
   "Username":"user1","Viewer":"user1"},
  {Id:25010,"Period":"13-May","Territory":"California","Selected":false,
  "Link":"/PSR03/0026-03-a/Web/api/Document/Index/25010",
  "Username":"user1","Viewer":"user1},
  {Id":25009,"Period":"13-May","Territory":"Chicago","Selected:false,
   Link":"/PSR03/0026-03-a/Web/api/Document/Index/25009",
  "Username":"user1,Viewer":"user1"},
  {"Id":25005,Period:"13-Mar,Territory":"Chicago","Selected":false,
  "Link":/PSR03/0026-03-a/Web/api/Document/Index/25005", 
  Username:"user1","Viewer":"user1"},
  {"Id":25006,"Period":"13-Mar","Territory":"EV","Selected":false,
   "Link":"/PSR03/0026-03-a/Web/api/Document/Index/25006",
   "Username":"user1","Viewer":"user1"},
  {"Id":25011,"Period":"13-Feb","Territory":"Chicagoelected":false,
   "Link":"/PSR03/0026-03-a/Web/api/Document/Index/25011",
   "Username":"user1","Viewer:user1"}],
   "LocalizationDictionary":

我正在将regex写为- "Id":(0-9*),“句号”它正在工作,并给出了Rubular中的所有Id。但是如何在VSTS web性能测试中实现它呢?

EN

回答 1

Stack Overflow用户

发布于 2014-06-09 11:12:35

正则表达式提取规则可能从数据中获取一个ID,也可能得到整个响应。我不知道如何使用内置的提取规则来获取您需要的数据。

我将编写一个WebTestRequestPlugin,其中PostRequest方法提取和格式化所需的数据。插件本身应该从e.Response.BodyString访问响应体。

提取所需数据并将其格式化为一个变量的方法取决于确切的数据格式,这将由于发问者在评论中所写的信息而变得复杂,即“响应文本被正确地复制,实际上双引号有差异”。可能因为缺少双引号,通常用于解析此类数据的库例程都无法工作。

插件方法的概要可能是:

代码语言:javascript
复制
public override void PostRequest(object sender, PostRequestEventArgs e)
{
    string[] body= e.Response.BodyString;
    string extractedIds = ...; // Extract and format the IDs from body.
    e.WebTest.Context["TheContextParameter"] = extractedIds;
}

此Microsoft页面给出了如何编写插件的详细信息。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24117990

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档