[英]How to insert code in monaco editor using the protractor?
我正在嘗試使用量角器來測試包含monaco編輯器的代碼,並且找不到如何以編程方式編輯代碼。
這是我的考驗
import {CodelabPage} from './app.po';
import {browser, element, by} from 'protractor';
describe('codelab App', function () {
let page: CodelabPage;
beforeEach(() => {
page = new CodelabPage();
});
it('should display message saying app works', () => {
page.navigateTo();
page.openMilestone(1);
page.openExercise('TypeScript');
browser.pause(2000);
page.editCode('Dog.ts', `HopHeyLalalay`);
browser.pause();
}
);
});
這是我的職責
import {browser, element, by} from 'protractor';
import {By} from "protractor/built/index";
export class CodelabPage {
navigateTo() {
return browser.get('/');
}
getMilestoneDescriptionText() {
element(by.css('.milestone')).click();
return element(by.css('.description')).getText();
}
getElementText(nameElement) {
return element(by.css(nameElement)).getText();
}
openMilestone(index) {
return element(by.cssContainingText('.milestone', index)).click();
}
openExercise(text) {
return element(by.cssContainingText('.exercise', text)).click();
}
editCode(filename: string, code: string) {
return element(by.css('.monaco-editor-background textarea'))
.sendKeys('njnj');
}
}
幫助您了解如何在摩納哥中編輯代碼或僅將代碼粘貼到摩納哥中。
摩納哥編輯器公開了一個API,您可以使用它來編輯文本區域。 您可以嘗試以下方法:
browser.executeScript('this.monaco.editor.getModels()[0].setValue("' + yourStringHere + '"));
如果您使用的是iframe,則在嘗試編輯代碼之前需要切換到iframe,如下所示:
browser.switchTo().frame(iframeSelector);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.