我们有一个受Azure ADB2C保护的网络应用程序。用户必须登录才能访问应用程序。当用户登录到应用程序时,我们使用API连接器功能,使用用户登录时使用的电子邮件获取更多用户详细信息。这些额外的详细信息将作为自定义属性添加到令牌中,并由OnTokenValidated事件中的web应用程序使用。
当我们的代码部署到Test/Staging或Production端点时,我们的集成测试将在该端点上运行。我不能欺骗身份验证,因为测试正在与活动终结点通信。我需要验证这些测试,就好像它们是真正的用户一样。
我已经环顾四周,并尝试了类似帖子中建议的ROPC流程。这个解决方案的问题在于,它不会调用API连接器来获取“正常”登录流将获得的额外用户详细信息。
ROPC解决方案:Integration Test with Azure AD login
我如何让我的集成测试使用Azure API进行身份验证,就像一个真正的用户一样,以便调用ADB2C连接器?
任何帮助/建议都是非常感谢的。
谢谢。
发布于 2021-09-29 07:02:11
谢谢你Nasheen Kalam的博客。
基于注册页面和登录页面的集成测试的GIT参考
https://git.uwaterloo.ca/jmshahen/ece651-project/-/merge_requests/22
以下是流程:
对预定义的用户运行身份验证测试
测试步骤:1.转到应用程序URL: 127.0.0.1:3000 2.重定向到登录页面3.使用注册电子邮件和密码4.登录5.验证结果
预期结果:
Pass:当电子邮件、密码匹配时
Fail:组合错误抛出的错误信息
为新用户运行注册过程
测试步骤:
如果DB中已存在用户,则
1.转到申请URL: 127.0.0.1:3000/signup 2.使用全名、电子邮件地址和密码4.注册5.验证结果
测试数据
用户名:测试User01用户邮箱: testuser@gmail.com
用户密码: usertest01
验证文本:测试User01
预期结果:
Pass:创建新用户时
Fail:用户已存在时抛出的错误信息
https://stackoverflow.com/questions/69347980
复制相似问题