BELLATRIX测试框架中存在以下陷阱:
1.未及时更新框架版本:BELLATRIX测试框架会不断更新版本以修复不同的问题,如果不及时更新版本可能会导致出现错误。解决方法是定期检查更新并更新版本。
对于不同的用例,测试人员可能会忘记添加元素搜索或操作所需的适当等待时间,这导致了脆弱的测试用例。解决方法是使用框架提供的等待时间机制或手动添加等待。
在切换测试场景时忽略清除cookies和缓存,这可能导致测试错误或缓慢。解决方法是在每个测试场景之前清除cookies和缓存。
示例:
以下是BELLATRIX测试框架中增加等待时间的示例,以防止测试脆弱:
using Bellatrix.Web.GettingStarted.Models;
using Bellatrix.Web.GettingStarted.Services;
using Bellatrix.Web.GettingStarted.Tests;
namespace Bellatrix.Web.GettingStarted
{
[TestClass]
public class AppropriateTestWait : WebTest
{
private LoginService _loginService;
public override void TestInit()
{
_loginService = new LoginService();
}
[TestMethod]
[TestCategory(Categories.CI)]
public void PurchaseRocket()
{
var rocket = new CartProduct("Rocket", "1");
_loginService.Login();
// Added sleep to prevent test flakiness
Thread.Sleep(2000);
App.CartService.AddToCart(rocket);
// Added sleep to prevent test flakiness
Thread.Sleep(2000);
App.NavigationService.NavigateToPage(typeof(CartPage));
App.CheckoutService.ClickProceedToCheckout();
// Added sleep to prevent test flakiness
Thread.Sleep(2000);
App.CheckoutService.FillBillingInfo("Angie", "Smith", "New York",