add webdriverio framework
This commit is contained in:
		
							parent
							
								
									189662b9e0
								
							
						
					
					
						commit
						14beef39c2
					
				
					 9 changed files with 409 additions and 2 deletions
				
			
		
							
								
								
									
										25
									
								
								test/objects/accounts.ts
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								test/objects/accounts.ts
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,25 @@
 | 
			
		|||
import { $, browser } from "@wdio/globals";
 | 
			
		||||
import Page from "./page.js";
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * sub page containing specific selectors and methods for a specific page
 | 
			
		||||
 */
 | 
			
		||||
export class SignInPage extends Page {
 | 
			
		||||
  public static get serverUrlInput() {
 | 
			
		||||
    return $("[name=serverUrl]");
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  public static async beTheCurrentPage() {
 | 
			
		||||
    const urlMatched =
 | 
			
		||||
      new URL(await browser.getUrl()).pathname === "/accounts/sign-in";
 | 
			
		||||
    const elementShowed = await this.serverUrlInput.isDisplayed();
 | 
			
		||||
    return urlMatched && elementShowed;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  /**
 | 
			
		||||
   * overwrite specific options to adapt it to page object
 | 
			
		||||
   */
 | 
			
		||||
  public static async open() {
 | 
			
		||||
    return await super.open("accounts/sign-in");
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										15
									
								
								test/objects/page.ts
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								test/objects/page.ts
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,15 @@
 | 
			
		|||
import { browser } from "@wdio/globals";
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * main page object containing all methods, selectors and functionality
 | 
			
		||||
 * that is shared across all page objects
 | 
			
		||||
 */
 | 
			
		||||
export default class Page {
 | 
			
		||||
  /**
 | 
			
		||||
   * Opens a sub page of the page
 | 
			
		||||
   * @param path path of the sub page (e.g. /path/to/page.html)
 | 
			
		||||
   */
 | 
			
		||||
  public static open(path: string) {
 | 
			
		||||
    return browser.url(`/${path}`);
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										7
									
								
								test/objects/timelines.ts
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								test/objects/timelines.ts
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,7 @@
 | 
			
		|||
import Page from "./page";
 | 
			
		||||
 | 
			
		||||
export class IndexPage extends Page {
 | 
			
		||||
  public static async open(path: string) {
 | 
			
		||||
    return await super.open(path);
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue