使用dthmlx组件中的量角器拖放

时间:2014-12-30 13:30:56

标签: angularjs protractor dhtmlx-scheduler

我正在使用带角度的dhtmlx调度程序组件。 Dhtmlx scheduler您可以在时间轴视图的实时演示中找到拖放事件。

我需要为它编写量角器测试用例。如何使用量角器执行dhtmlx组件的拖放?

1 个答案:

答案 0 :(得分:2)

Dhtmlx调度程序页面上提供的演示不使用角度。我发现another suitable demo page我会用它作为例子。

一般的想法非常简单 - 使用dragAndDrop()函数。不幸的是,API documentation page没有记录。可能是因为它来自webdriverjs而量角器与它无关。无论如何,目前,您可以在这里找到一些信息和样本:

基本上,您可以将元素移动到xy向左或向右或向上或向下移动;或者,您可以移动到另一个元素。

以下是一个示例(向右移动Task #1 1000):

describe("Sample test", function () {
    beforeEach(function () {
        browser.get("http://dhtmlx.github.io/angular-gantt-demo/");
        browser.waitForAngular();
    });

    it("should move the task", function () {
        var task = element(by.xpath('//div[@class="gantt_bars_area"]//div[@task_id="2"]'));

        browser.actions().dragAndDrop(
            task,
            {x:1000, y:0}
        ).perform();

        browser.sleep(10000);
    });
});

或者,您可以手动链接mouseDown()mouseMove()mouseUp()操作,示例: