Cypress 两条路径的最小匹配模式,其中一条路径是另一条路径的前缀

Cypress 两条路径的最小匹配模式,其中一条路径是另一条路径的前缀,cypress,glob,minimatch,Cypress,Glob,Minimatch,我正在用cypress编写一个集成测试,在使用minimatch模式时遇到了问题 我有两个端点需要存根。 /用户/1和/用户/1/配置文件 我试图用cy.intercept模拟这两个端点的方式如下。 对于第一个url,/users/1,我尝试了cy.intercept'GET','/users/1',{} 对于分区url,/users/1/profile,我尝试了cy.intercept'GET'、'/users/1/profile'、{} 问题是第一个模式截获了两次 我能在这方面得到一些帮助吗

我正在用cypress编写一个集成测试,在使用minimatch模式时遇到了问题

我有两个端点需要存根。 /用户/1和/用户/1/配置文件

我试图用cy.intercept模拟这两个端点的方式如下。 对于第一个url,/users/1,我尝试了cy.intercept'GET','/users/1',{}

对于分区url,/users/1/profile,我尝试了cy.intercept'GET'、'/users/1/profile'、{}

问题是第一个模式截获了两次


我能在这方面得到一些帮助吗??谢谢。

我第一次使用cy.intercept时也遇到了这个问题。解决方案是将RouteMatcher对象传递给该方法。特别是,您需要使用下图中的最后一个方法签名:

在RouteMatcher对象中,可以指定路径属性。以下是路径属性的说明:

本质上,使用RouteMatcher对象的path属性对给定字符串进行精确匹配,而第1个和第2个方法签名中的url参数对给定字符串进行子字符串匹配

因此,您需要的是:

cy.intercept(
    {method: 'GET', path: '/users/1'},
    {body: {}}
)

cy.intercept(
    {method: 'GET', path: '/users/1/profile'},
    {body: {}}
)

在我看来,Cypress在cy.route和cy.intercept方法之间的这一细微变化很奇怪,在第一次运行时有点出乎意料。

I在第一次使用cy.intercept时也遇到了这个问题。解决方案是将RouteMatcher对象传递给该方法。特别是,您需要使用下图中的最后一个方法签名:

在RouteMatcher对象中,可以指定路径属性。以下是路径属性的说明:

本质上,使用RouteMatcher对象的path属性对给定字符串进行精确匹配,而第1个和第2个方法签名中的url参数对给定字符串进行子字符串匹配

因此,您需要的是:

cy.intercept(
    {method: 'GET', path: '/users/1'},
    {body: {}}
)

cy.intercept(
    {method: 'GET', path: '/users/1/profile'},
    {body: {}}
)

在我看来,Cypress在cy.route和cy.intercept方法之间的这一细微变化在第一次运行时很奇怪,有点出乎意料。

OMG,你是最好的!!!!!!!!谢谢。天哪,你是最棒的!!!!!!!!谢谢