使用selenium自动化MSD365的问题
我尝试使用Selenium自动化Dynamics365,但遇到了很多问题,如使用selenium自动化MSD365的问题,selenium,testing,automation,microsoft-dynamics,dynamics-365,Selenium,Testing,Automation,Microsoft Dynamics,Dynamics 365,我尝试使用Selenium自动化Dynamics365,但遇到了很多问题,如 使用“Id”作为元素定位器,但它在不同实例上不断更改 元素定位器“Name”在所有实例中都不起作用 Xpath附带了“id”,因此它也是动态的 由于所有这些原因,我无法在IE中运行代码,但该代码在Chrome中运行 有人能帮忙解决这个问题吗?我建议您考虑使用。它是Github MS的一个C#项目,构建在Selenium之上,是一个框架,让您能够专注于编写有意义的测试,而不是学习Selenium和D365中复杂的DOM。
有人能帮忙解决这个问题吗?我建议您考虑使用。它是Github MS的一个C#项目,构建在Selenium之上,是一个框架,让您能够专注于编写有意义的测试,而不是学习Selenium和D365中复杂的DOM。它允许您通过模式名称引用表单对象。当您下载该项目时,它会加载大量优秀的示例,您可以运行这些示例来测试所有不同的表单,并且可以修改它们以满足您的需要 例如,您可以使用以下简单代码测试创建联系人:
xrmBrowser.LoginPage.Login(_xrmUri, _username, _password);
xrmBrowser.GuidedHelp.CloseGuidedHelp();
xrmBrowser.ThinkTime(500);
xrmBrowser.Navigation.OpenSubArea("Sales", "Contacts");
xrmBrowser.ThinkTime(1000);
xrmBrowser.Grid.SwitchView("Active Contacts");
xrmBrowser.ThinkTime(2000);
xrmBrowser.CommandBar.ClickCommand("New");
xrmBrowser.ThinkTime(5000);
var fields = new List<Field>
{
new Field() {Id = "firstname", Value = "Test"},
new Field() {Id = "lastname", Value = "Contact"}
};
xrmBrowser.Entity.SetValue(new CompositeControl() { Id = "fullname", Fields = fields});
xrmBrowser.Entity.SetValue("emailaddress1", "test@contoso.com");
xrmBrowser.Entity.SetValue("mobilephone", "555-555-5555");
xrmBrowser.Entity.SetValue("birthdate", DateTime.Parse("11/1/1980"));
xrmBrowser.Entity.SetValue(new OptionSet { Name = "preferredcontactmethodcode", Value = "Email"});
xrmBrowser.CommandBar.ClickCommand("Save");
xrmBrowser.LoginPage.Login(\uxrmuri,\uusername,\upassword);
xrmBrowser.GuidedHelp.CloseGuidedHelp();
xrmBrowser.ThinkTime(500);
xrmBrowser.Navigation.OpenSubrea(“销售”、“联系人”);
xrmBrowser.ThinkTime(1000);
xrmBrowser.Grid.SwitchView(“活动触点”);
xrmBrowser.ThinkTime(2000);
xrmBrowser.CommandBar.ClickCommand(“新建”);
xrmBrowser.ThinkTime(5000);
变量字段=新列表
{
新字段(){Id=“firstname”,Value=“Test”},
新建字段(){Id=“lastname”,Value=“Contact”}
};
xrmBrowser.Entity.SetValue(新的CompositeControl(){Id=“fullname”,Fields=Fields});
xrmBrowser.Entity.SetValue(“emailaddress1”test@contoso.com");
xrmBrowser.Entity.SetValue(“手机”、“555-555-5555”);
xrmBrowser.Entity.SetValue(“生日”,DateTime.Parse(“1980年11月1日”);
xrmBrowser.Entity.SetValue(新选项开始{Name=“preferredcontactmethodcode”,Value=“Email”});
xrmBrowser.CommandBar.ClickCommand(“保存”);
你能给出一些html代码示例吗?driver.findElement(By.id(“purchtablelistpageassignedtome_3_SystemDefinedViewEditButton_label”)。单击();“purchtablelistpageassignedtome_3_SystemDefinedViewEditButton_标签”这是一个动态id,在不同的实例中不断变化