How to use TestsigmaException method of com.testsigma.service.PrivateGridService class

Best Testsigma code snippet using com.testsigma.service.PrivateGridService.TestsigmaException

Source:IntegrationsController.java Github

copy

Full Screen

...9import com.testsigma.dto.IntegrationsDTO;10import com.testsigma.dto.JiraProjectDTO;11import com.testsigma.exception.IntegrationNotFoundException;12import com.testsigma.exception.TestsigmaDatabaseException;13import com.testsigma.exception.TestsigmaException;14import com.testsigma.mapper.IntegrationsMapper;15import com.testsigma.model.Integrations;16import com.testsigma.service.*;17import com.testsigma.web.request.IntegrationsRequest;18import lombok.RequiredArgsConstructor;19import org.apache.commons.codec.EncoderException;20import org.springframework.beans.factory.annotation.Autowired;21import org.springframework.http.HttpStatus;22import org.springframework.web.bind.annotation.*;23import javax.annotation.Nullable;24import javax.servlet.http.HttpServletRequest;25import javax.validation.constraints.NotNull;26import java.io.IOException;27import java.net.URISyntaxException;28import java.util.List;29@RestController30@RequestMapping(path = "/settings/integrations")31@RequiredArgsConstructor(onConstructor = @__(@Autowired))32public class IntegrationsController {33 private final IntegrationsService integrationsService;34 private final JiraService jiraService;35 private final FreshreleaseService freshreleaseService;36 private final MantisService mantisService;37 private final AzureService azureService;38 private final BackLogService backLogService;39 private final ZepelService zepelService;40 private final YoutrackService youtrackService;41 private final BugZillaService bugZillaService;42 private final TrelloService trelloService;43 private final LinearService linearService;44 private final IntegrationsMapper mapper;45 private final ClickUpService clickUpService;46 private final PrivateGridService privateGridService;47 @RequestMapping(method = RequestMethod.POST)48 public IntegrationsDTO create(49 @RequestBody IntegrationsRequest integrationsRequest, HttpServletRequest request)50 throws TestsigmaDatabaseException {51 Integrations config = integrationsService.create(integrationsRequest);52 return mapper.map(config);53 }54 @RequestMapping(path = "/{configId}", method = RequestMethod.PUT)55 public IntegrationsDTO update(56 @RequestBody IntegrationsRequest integrationsRequest,57 @PathVariable("configId") Long configId)58 throws IntegrationNotFoundException, TestsigmaDatabaseException {59 Integrations config = integrationsService.update(integrationsRequest,60 configId);61 return mapper.map(config);62 }63 @RequestMapping(path = "/{configId}", method = RequestMethod.GET)64 public IntegrationsDTO get(@PathVariable("configId") Long configId)65 throws IntegrationNotFoundException {66 Integrations config = integrationsService.find(configId);67 return mapper.map(config);68 }69 @RequestMapping(path = "/{configId}", method = RequestMethod.DELETE)70 public HttpStatus destroy(@PathVariable("configId") Long configId)71 throws IntegrationNotFoundException {72 integrationsService.destroy(configId);73 return HttpStatus.OK;74 }75 @RequestMapping(method = RequestMethod.GET)76 public List<IntegrationsDTO> index() {77 List<Integrations> configs = integrationsService.findAll();78 return mapper.map(configs);79 }80 @GetMapping(path = "/{id}/jira_projects")81 public List<JiraProjectDTO> jiraFields(@PathVariable("id") Long id, @Nullable @RequestParam("projectId") String projectId, @Nullable @RequestParam("issueType") String issueType) throws TestsigmaException, EncoderException {82 Integrations applicationConfig = this.integrationsService.find(id);83 this.jiraService.setIntegrations(applicationConfig);84 return this.jiraService.getIssueFields(projectId, issueType);85 }86 @GetMapping(path = "/{id}/search_jira_issues")87 public JsonNode searchIssues(@PathVariable("id") Long id, @NotNull @RequestParam("project") String project, @NotNull @RequestParam("issueType") String issueType, @Nullable @RequestParam("summary") String summary) throws TestsigmaException {88 Integrations applicationConfig = this.integrationsService.find(id);89 this.jiraService.setIntegrations(applicationConfig);90 return this.jiraService.getIssuesList(project, issueType, summary);91 }92 @GetMapping(path = "/{id}/freshrelease_projects")93 public JsonNode fetchFRProjects(@PathVariable("id") Long id) throws TestsigmaException {94 Integrations applicationConfig = this.integrationsService.find(id);95 freshreleaseService.setIntegrations(applicationConfig);96 return freshreleaseService.projects();97 }98 @GetMapping(path = "/{id}/freshrelease_issue_types")99 public JsonNode fetchFRProjectIssueTypes(@PathVariable("id") Long id, @NotNull @RequestParam("project") String project) throws TestsigmaException {100 Integrations applicationConfig = this.integrationsService.find(id);101 freshreleaseService.setIntegrations(applicationConfig);102 return freshreleaseService.issueTypes(project);103 }104 @GetMapping(path = "/{id}/search_freshrelease_issues")105 public JsonNode searchFreshReleaseIssues(@PathVariable("id") Long id, @NotNull @RequestParam("project") String project, @Nullable @RequestParam("title") String title) throws TestsigmaException {106 Integrations applicationConfig = this.integrationsService.find(id);107 this.jiraService.setIntegrations(applicationConfig);108 return this.freshreleaseService.getIssuesList(project, title);109 }110 @GetMapping(path = "/{id}/mantis_projects")111 public JsonNode fetchMantisProjects(@PathVariable("id") Long id) throws TestsigmaException {112 Integrations applicationConfig = this.integrationsService.find(id);113 mantisService.setIntegrations(applicationConfig);114 return mantisService.projects();115 }116 @GetMapping(path = "/{id}/search_mantis_issues")117 public JsonNode fetchMantisIssues(@PathVariable("id") Long id, @NotNull @RequestParam("project") String project) throws TestsigmaException {118 Integrations applicationConfig = this.integrationsService.find(id);119 mantisService.setIntegrations(applicationConfig);120 return mantisService.getIssuesList(project);121 }122 @GetMapping(path = "/{id}/search_mantis_issue/{issueId}")123 public JsonNode fetchMantisIssue(@PathVariable("id") Long id, @PathVariable("issueId") Long issueId) throws TestsigmaException {124 Integrations applicationConfig = this.integrationsService.find(id);125 mantisService.setIntegrations(applicationConfig);126 return mantisService.getIssue(issueId);127 }128 @GetMapping(path = "/{id}/azure_projects")129 public JsonNode fetchAzureProjects(@PathVariable("id") Long id) throws TestsigmaException {130 Integrations applicationConfig = this.integrationsService.find(id);131 azureService.setApplicationConfig(applicationConfig);132 return azureService.projects();133 }134 @GetMapping(path = "/{id}/azure_issue_types")135 public JsonNode fetchAzureProjectIssueTypes(@PathVariable("id") Long id, @NotNull @RequestParam("project") String project) throws TestsigmaException, EncoderException {136 Integrations applicationConfig = this.integrationsService.find(id);137 azureService.setApplicationConfig(applicationConfig);138 return azureService.issueTypes(project);139 }140 @GetMapping(path = "/{id}/search_azure_issues")141 public JsonNode searchAzureIssues(@PathVariable("id") Long id, @NotNull @RequestParam("project") String project,142 @NotNull @RequestParam("issueType") String issueType, @Nullable @RequestParam("title") String title) throws TestsigmaException {143 Integrations applicationConfig = this.integrationsService.find(id);144 this.azureService.setApplicationConfig(applicationConfig);145 return this.azureService.getIssuesList(project, issueType, title);146 }147 @GetMapping(path = "/{id}/get_azure_issues")148 public JsonNode getAzureIssuesData(@PathVariable("id") Long id, @NotNull @RequestParam("ids") String issueIds) throws TestsigmaException {149 return this.azureService.fetchIssuesData(issueIds);150 }151 @GetMapping(path = "/{id}/backlog_projects")152 public JsonNode fetchBackLogProjects(@PathVariable("id") Long id) throws TestsigmaException {153 Integrations applicationConfig = this.integrationsService.find(id);154 backLogService.setIntegrations(applicationConfig);155 return backLogService.projects();156 }157 @GetMapping(path = "/{id}/search_backlog_issue_types")158 public JsonNode fetchBackLogIssueTypes(@PathVariable("id") Long id, @NotNull @RequestParam("project") Long project) throws TestsigmaException {159 Integrations applicationConfig = this.integrationsService.find(id);160 backLogService.setIntegrations(applicationConfig);161 return backLogService.getIssueTypes(project);162 }163 @GetMapping(path = "/{id}/search_backlog_issues")164 public JsonNode fetchBackLogIssues(@PathVariable("id") Long id,165 @NotNull @RequestParam("project") Long project,166 @NotNull @RequestParam("issueTypeId") Long issueTypeId,167 @NotNull @RequestParam("priorityId") Long priorityId,168 @RequestParam(value = "keyword", required = false) String keyword) throws TestsigmaException {169 Integrations applicationConfig = this.integrationsService.find(id);170 backLogService.setIntegrations(applicationConfig);171 return backLogService.getIssuesList(project, issueTypeId, priorityId, keyword);172 }173 @GetMapping(path = "/{id}/search_backlog_issue")174 public JsonNode fetchBackLogIssue(@PathVariable("id") Long id, @NotNull @RequestParam("issueId") Long issueId) throws TestsigmaException {175 Integrations applicationConfig = this.integrationsService.find(id);176 backLogService.setIntegrations(applicationConfig);177 return backLogService.getIssue(issueId);178 }179 @GetMapping(path = "/{id}/search_backlog_priorities")180 public JsonNode fetchBackLogPriorities(@PathVariable("id") Long id) throws TestsigmaException {181 Integrations applicationConfig = this.integrationsService.find(id);182 backLogService.setIntegrations(applicationConfig);183 return backLogService.getPriorities();184 }185 @GetMapping(path = "/{id}/zepel_projects")186 public JsonNode fetchZepelProjects(@PathVariable("id") Long id) throws TestsigmaException {187 Integrations applicationConfig = this.integrationsService.find(id);188 zepelService.setIntegrations(applicationConfig);189 return zepelService.projects();190 }191 @GetMapping(path = "/{id}/search_zepel_issue_types")192 public JsonNode fetchZepelIssueTypes(@PathVariable("id") Long id, @NotNull @RequestParam("project") String project) throws TestsigmaException {193 Integrations applicationConfig = this.integrationsService.find(id);194 zepelService.setIntegrations(applicationConfig);195 return zepelService.getIssueTypes(project);196 }197 @GetMapping(path = "/{id}/search_zepel_issues")198 public JsonNode fetchZepelIssues(@PathVariable("id") Long id,199 @NotNull @RequestParam("project") String project,200 @NotNull @RequestParam("issueTypeId") String issueTypeId) throws TestsigmaException {201 Integrations applicationConfig = this.integrationsService.find(id);202 zepelService.setIntegrations(applicationConfig);203 return zepelService.getIssuesList(project, issueTypeId);204 }205 @GetMapping(path = "/{id}/youtrack_projects")206 public JsonNode fetchYoutrackProjects(@PathVariable("id") Long id) throws TestsigmaException {207 Integrations applicationConfig = this.integrationsService.find(id);208 youtrackService.setIntegrations(applicationConfig);209 return youtrackService.projects();210 }211 @GetMapping(path = "/{id}/search_youtrack_issues")212 public JsonNode searchYoutrackIssues(@PathVariable("id") Long id, @Nullable @RequestParam("title") String title) throws TestsigmaException {213 Integrations applicationConfig = this.integrationsService.find(id);214 this.youtrackService.setIntegrations(applicationConfig);215 return this.youtrackService.getIssuesList();216 }217 @GetMapping(path = "/{id}/bugzilla_projects")218 public JsonNode fetchBugZillaProjects(@PathVariable("id") Long id) throws TestsigmaException {219 Integrations applicationConfig = this.integrationsService.find(id);220 bugZillaService.setIntegrations(applicationConfig);221 return bugZillaService.projects();222 }223 @GetMapping(path = "/{id}/search_bugzilla_issues")224 public JsonNode fetchBugZillaIssues(@PathVariable("id") Long id,225 @NotNull @RequestParam("project") String project,226 @NotNull @RequestParam("issueType") String issueType,227 @NotNull @RequestParam("version") String version) throws TestsigmaException {228 Integrations applicationConfig = this.integrationsService.find(id);229 bugZillaService.setIntegrations(applicationConfig);230 return bugZillaService.getIssuesList(project, issueType, version);231 }232 @GetMapping(path = "/{id}/search_bugzilla_issue/{issueId}")233 public JsonNode fetchBugZillaIssue(@PathVariable("id") Long id, @PathVariable("issueId") Long issueId) throws TestsigmaException {234 Integrations applicationConfig = this.integrationsService.find(id);235 bugZillaService.setIntegrations(applicationConfig);236 return bugZillaService.getIssue(issueId);237 }238 @GetMapping(path = "/{id}/trello_projects")239 public JsonNode fetchTrelloProjects(@PathVariable("id") Long id) throws TestsigmaException {240 Integrations applicationConfig = this.integrationsService.find(id);241 trelloService.setApplicationConfig(applicationConfig);242 return trelloService.projects();243 }244 @GetMapping(path = "/{id}/search_trello_issue_types")245 public JsonNode fetchTrelloIssueTypes(@PathVariable("id") Long id, @NotNull @RequestParam("project") String project) throws TestsigmaException {246 Integrations applicationConfig = this.integrationsService.find(id);247 trelloService.setApplicationConfig(applicationConfig);248 return trelloService.getIssueTypes(project);249 }250 @GetMapping(path = "/{id}/search_trello_issues")251 public JsonNode fetchTrelloIssues(@PathVariable("id") Long id,252 @NotNull @RequestParam("issueTypeId") String issueTypeId) throws TestsigmaException {253 Integrations applicationConfig = this.integrationsService.find(id);254 trelloService.setApplicationConfig(applicationConfig);255 return trelloService.getIssuesList(issueTypeId);256 }257 @GetMapping(path = "/{id}/search_trello_issue")258 public JsonNode fetchTrelloIssue(@PathVariable("id") Long id,259 @NotNull @RequestParam("issueId") String issueId) throws TestsigmaException {260 Integrations applicationConfig = this.integrationsService.find(id);261 trelloService.setApplicationConfig(applicationConfig);262 return trelloService.getIssue(issueId);263 }264 @GetMapping(path = "/{id}/linear_teams")265 public JsonNode fetchLinearTeams(@PathVariable("id") Long id) throws TestsigmaException, URISyntaxException {266 Integrations applicationConfig = this.integrationsService.find(id);267 linearService.setIntegrations(applicationConfig);268 return linearService.teams();269 }270 @GetMapping(path = "/{id}/search_linear_projects")271 public JsonNode fetchLinearProjects(@PathVariable("id") Long id, @NotNull @RequestParam("teamId") String teamId) throws TestsigmaException, URISyntaxException {272 Integrations applicationConfig = this.integrationsService.find(id);273 linearService.setIntegrations(applicationConfig);274 return linearService.projects(teamId);275 }276 @GetMapping(path = "/{id}/search_linear_issues")277 public JsonNode fetchLinearIssues(@PathVariable("id") Long id,278 @NotNull @RequestParam("projectId") String projectId) throws TestsigmaException, URISyntaxException {279 Integrations applicationConfig = this.integrationsService.find(id);280 linearService.setIntegrations(applicationConfig);281 return linearService.getIssuesList(projectId);282 }283 @GetMapping(path = "/{id}/search_linear_issue")284 public JsonNode fetchLinearIssue(@PathVariable("id") Long id,285 @NotNull @RequestParam("issueId") String issueId) throws TestsigmaException, URISyntaxException {286 Integrations applicationConfig = this.integrationsService.find(id);287 linearService.setIntegrations(applicationConfig);288 return linearService.getIssue(issueId);289 }290 @PostMapping(path = "/test_linear_integration")291 public JsonNode testLinearAuth(@RequestBody IntegrationsRequest config) throws TestsigmaException, IOException, URISyntaxException {292 return linearService.testIntegration(config);293 }294 @GetMapping(path = "/{id}/clickup_tasks")295 public JsonNode fetchClickUpTasks(@PathVariable("id") Long id, @NotNull @RequestParam("listId") String listId) throws TestsigmaException, URISyntaxException {296 Integrations applicationConfig = this.integrationsService.find(id);297 clickUpService.setWorkspaceConfig(applicationConfig);298 return clickUpService.tasks(listId);299 }300 @GetMapping(path = "/{id}/clickup_lists")301 public JsonNode fetchClickUpLists(@PathVariable("id") Long id, @NotNull @RequestParam("folderId") String folderId) throws TestsigmaException, URISyntaxException {302 Integrations applicationConfig = this.integrationsService.find(id);303 clickUpService.setWorkspaceConfig(applicationConfig);304 return clickUpService.lists(folderId);305 }306 @GetMapping(path = "/{id}/clickup_folders")307 public JsonNode fetchClickUpFolders(@PathVariable("id") Long id, @NotNull @RequestParam("spaceId") String spaceId) throws TestsigmaException, URISyntaxException {308 Integrations applicationConfig = this.integrationsService.find(id);309 clickUpService.setWorkspaceConfig(applicationConfig);310 return clickUpService.folders(spaceId);311 }312 @GetMapping(path = "/{id}/clickup_spaces")313 public JsonNode fetchClickUpSpaces(@PathVariable("id") Long id, @NotNull @RequestParam("teamId") String teamId) throws TestsigmaException, URISyntaxException {314 Integrations applicationConfig = this.integrationsService.find(id);315 clickUpService.setWorkspaceConfig(applicationConfig);316 return clickUpService.spaces(teamId);317 }318 @GetMapping(path = "/{id}/clickup_teams")319 public JsonNode fetchClickUpTeams(@PathVariable("id") Long id) throws TestsigmaException {320 Integrations applicationConfig = this.integrationsService.find(id);321 clickUpService.setWorkspaceConfig(applicationConfig);322 return clickUpService.teams();323 }324 @PostMapping(path = "/test_clickup_integration")325 public JsonNode testClickUpAuth(@RequestBody IntegrationsRequest config) throws TestsigmaException, IOException, URISyntaxException {326 return clickUpService.testIntegration(config);327 }328 @PostMapping(path = "/test_youtrack_integration")329 public JsonNode testYtAuth(@RequestBody IntegrationsRequest config) throws TestsigmaException {330 return youtrackService.testIntegration(config);331 }332 @PostMapping(path = "/test_azure_integration")333 public JsonNode testAzureAuth(@RequestBody IntegrationsRequest config) throws TestsigmaException {334 return azureService.testIntegration(config);335 }336 @PostMapping(path = "/test_mantis_integration")337 public JsonNode testMantisAuth(@RequestBody IntegrationsRequest config) throws TestsigmaException {338 return mantisService.testIntegration(config);339 }340 @PostMapping(path = "/test_zepel_integration")341 public JsonNode testZepelAuth(@RequestBody IntegrationsRequest config) throws TestsigmaException {342 return zepelService.testIntegration(config);343 }344 @PostMapping(path = "/test_jira_integration")345 public JsonNode testJiraAuth(@RequestBody IntegrationsRequest config) throws TestsigmaException {346 return jiraService.testIntegration(config);347 }348 @PostMapping(path = "/test_freshrelease_integration")349 public JsonNode testFRAuth(@RequestBody IntegrationsRequest config) throws TestsigmaException {350 return freshreleaseService.testIntegration(config);351 }352 @PostMapping(path = "/test_backlog_integration")353 public JsonNode testBacklogAuth(@RequestBody IntegrationsRequest config) throws TestsigmaException {354 return backLogService.testIntegration(config);355 }356 @PostMapping(path = "/test_bugzilla_integration")357 public JsonNode testBugzillaAuth(@RequestBody IntegrationsRequest config) throws TestsigmaException {358 return bugZillaService.testIntegration(config);359 }360 @PostMapping(path = "/test_privategrid_integration")361 public JsonNode testPrivateGridAuth(@RequestBody IntegrationsRequest config) throws TestsigmaException {362 return privateGridService.testIntegration(config);363 }364}...

Full Screen

Full Screen

Source:PlatformsService.java Github

copy

Full Screen

...6 */7package com.testsigma.service;8import com.fasterxml.jackson.core.type.TypeReference;9import com.testsigma.exception.IntegrationNotFoundException;10import com.testsigma.exception.TestsigmaException;11import com.testsigma.model.*;12import com.testsigma.util.HttpClient;13import lombok.RequiredArgsConstructor;14import lombok.extern.log4j.Log4j2;15import org.apache.http.Header;16import org.apache.http.HttpHeaders;17import org.apache.http.message.BasicHeader;18import org.springframework.beans.factory.annotation.Autowired;19import org.springframework.stereotype.Service;20import org.springframework.util.LinkedMultiValueMap;21import org.springframework.util.MultiValueMap;22import org.springframework.web.util.UriComponents;23import org.springframework.web.util.UriComponentsBuilder;24import java.util.ArrayList;25import java.util.List;26@Service27@Log4j228@RequiredArgsConstructor(onConstructor = @__(@Autowired))29public class PlatformsService {30 private static final String PLATFORMS_BASE_URL = "/api/platforms";31 private static final String PLATFORMS_BASE_PUBLIC_URL = "/api_public/platforms";32 private static final String PLATFORM_OS_VERSION_URL = "/{platform}/{osVersion}";33 private static final String PLATFORM_OS_VERSION_BY_ID_URL = "/{platformOsVersionId}/os_version";34 private static final String PLATFORM_OS_VERSIONS_URL = "/{platform}/os_versions";35 private static final String PLATFORM_BROWSERS_URL = "/{platform}/{osVersion}/browsers";36 private static final String PLATFORM_BROWSER_VERSION_URL = "/{platform}/{osVersion}/browser/{browserName}/{browserVersion}";37 private static final String PLATFORM_BROWSER_VERSION_BY_ID_URL = "/{platformBrowserVersionId}/browser_version";38 private static final String PLATFORM_BROWSER_VERSIONS_URL = "/{platform}/{osVersion}/browser/{browserName}/versions";39 private static final String PLATFORM_SCREEN_RESOLUTION_URL = "/{platform}/{osVersion}/resolution/{resolution}";40 private static final String PLATFORM_SCREEN_RESOLUTION_BY_ID_URL = "/{platformScreenResolutionId}/screen_resolution";41 private static final String PLATFORM_SCREEN_RESOLUTIONS_URL = "/{platform}/{osVersion}/screen_resolutions";42 private static final String PLATFORM_DEVICES_URL = "/{platform}/devices";43 private static final String PLATFORM_DEVICE_URL = "/{platform}/{osVersion}/device/{deviceName}";44 private static final String PLATFORM_DEVICE_BY_ID_URL = "/{platformDeviceId}/device";45 private final HybridPlatformService hybridPlatformService;46 private final PrivateGridService privateGridService;47 private final IntegrationsService integrationsService;48 private final HttpClient httpClient;49 private final TestsigmaOSConfigService testsigmaOSConfigService;50 public List<Platform> getSupportedPlatforms(WorkspaceType workspaceType,51 TestPlanLabType testPlanLabType) throws TestsigmaException {52 if (testPlanLabType != TestPlanLabType.PrivateGrid) {53 com.testsigma.util.HttpResponse<List<Platform>> response = httpClient.get(getSupportedPlatformsUrl(54 workspaceType, testPlanLabType),55 getHeaders(testPlanLabType), new TypeReference<>() {56 });57 if (response.getStatusCode() < 300) {58 return response.getResponseEntity();59 } else {60 return new ArrayList<>();61 }62 }63 else {64 return this.privateGridService.getAllPlatforms();65 }66 }67 public List<PlatformOsVersion> getPlatformOsVersions(Platform platform,68 WorkspaceType workspaceType,69 TestPlanLabType testPlanLabType) throws TestsigmaException {70 com.testsigma.util.HttpResponse<List<PlatformOsVersion>> response = httpClient.get(getPlatformOsVersionsUrl(71 platform, workspaceType, testPlanLabType), getHeaders(testPlanLabType), new TypeReference<>() {72 });73 if (response.getStatusCode() < 300) {74 return response.getResponseEntity();75 } else {76 return new ArrayList<>();77 }78 }79 public PlatformOsVersion getPlatformOsVersion(Platform platform, String osVersion,80 WorkspaceType workspaceType,81 TestPlanLabType testPlanLabType) throws TestsigmaException {82 com.testsigma.util.HttpResponse<PlatformOsVersion> response = httpClient.get(getPlatformOsVersionUrl(platform,83 osVersion, workspaceType, testPlanLabType), getHeaders(testPlanLabType), new TypeReference<>() {84 });85 if (response.getStatusCode() < 300) {86 return response.getResponseEntity();87 } else {88 return null;89 }90 }91 public PlatformOsVersion getPlatformOsVersion(Long platformOsVersionId,92 TestPlanLabType testPlanLabType) throws TestsigmaException {93 com.testsigma.util.HttpResponse<PlatformOsVersion> response = httpClient.get(getPlatformOsVersionUrl(platformOsVersionId,94 testPlanLabType), getHeaders(testPlanLabType), new TypeReference<>() {95 });96 if (response.getStatusCode() < 300) {97 return response.getResponseEntity();98 } else {99 return null;100 }101 }102 public List<Browsers> getPlatformSupportedBrowsers(Platform platform, String osVersion,103 TestPlanLabType testPlanLabType)104 throws TestsigmaException {105 if (testPlanLabType!=TestPlanLabType.PrivateGrid) {106 com.testsigma.util.HttpResponse<List<Browsers>> response = httpClient.get(getBrowsersNamesUrl(platform,107 osVersion, testPlanLabType), getHeaders(testPlanLabType), new TypeReference<>() {108 });109 if (response.getStatusCode() < 300) {110 return response.getResponseEntity();111 } else {112 return new ArrayList<>();113 }114 }115 else {116 return this.privateGridService.getPlatformSupportedBrowsers(platform);117 }118 }119 public List<PlatformBrowserVersion> getPlatformBrowsers(Platform platform, String osVersion,120 Browsers browserName,121 TestPlanLabType testPlanLabType) throws TestsigmaException {122 if (testPlanLabType != TestPlanLabType.PrivateGrid) {123 com.testsigma.util.HttpResponse<List<PlatformBrowserVersion>> response = httpClient.get(getBrowsersUrl(124 platform, osVersion, browserName.toString(), testPlanLabType), getHeaders(testPlanLabType), new TypeReference<>() {125 });126 if (response.getStatusCode() < 300) {127 return response.getResponseEntity();128 } else {129 return new ArrayList<>();130 }131 }132 else {133 return this.privateGridService.getPlatformBrowserVersions( platform, browserName);134 }135 }136 public PlatformBrowserVersion getPlatformBrowserVersion(Platform platform, String osVersion,137 Browsers browserName, String browserVersion,138 TestPlanLabType testPlanLabType) throws TestsigmaException {139 com.testsigma.util.HttpResponse<PlatformBrowserVersion> response = httpClient.get(getBrowserUrl(platform,140 osVersion, browserName.toString(), browserVersion, testPlanLabType), getHeaders(testPlanLabType), new TypeReference<>() {141 });142 if (response.getStatusCode() < 300) {143 return response.getResponseEntity();144 } else {145 return null;146 }147 }148 public PlatformBrowserVersion getPlatformBrowserVersion(Long platformBrowserVersionId,149 TestPlanLabType testPlanLabType) throws TestsigmaException {150 com.testsigma.util.HttpResponse<PlatformBrowserVersion> response = httpClient.get(getBrowserUrl(platformBrowserVersionId,151 testPlanLabType), getHeaders(testPlanLabType), new TypeReference<>() {152 });153 if (response.getStatusCode() < 300) {154 return response.getResponseEntity();155 } else {156 return null;157 }158 }159 public List<PlatformScreenResolution> getPlatformScreenResolutions(Platform platform, String osVersion,160 TestPlanLabType testPlanLabType)161 throws TestsigmaException {162 com.testsigma.util.HttpResponse<List<PlatformScreenResolution>> response = httpClient.get(getScreenResolutionsUrl(163 platform, osVersion, testPlanLabType), getHeaders(testPlanLabType), new TypeReference<>() {164 });165 if (response.getStatusCode() < 300) {166 return response.getResponseEntity();167 } else {168 return new ArrayList<>();169 }170 }171 public PlatformScreenResolution getPlatformScreenResolution(Long platformScreenResolutionId,172 TestPlanLabType testPlanLabType)173 throws TestsigmaException {174 com.testsigma.util.HttpResponse<PlatformScreenResolution> response = httpClient.get(getScreenResolutionUrl(175 platformScreenResolutionId, testPlanLabType), getHeaders(testPlanLabType), new TypeReference<>() {176 });177 if (response.getStatusCode() < 300) {178 return response.getResponseEntity();179 } else {180 return null;181 }182 }183 public List<PlatformDevice> getPlatformDevices(Platform platform, String osVersion,184 TestPlanLabType testPlanLabType) throws TestsigmaException {185 List<String> osVersions = new ArrayList<>();186 osVersions.add(osVersion);187 return getPlatformDevices(platform, osVersions, testPlanLabType);188 }189 public List<PlatformDevice> getPlatformDevices(Platform platform, List<String> osVersions,190 TestPlanLabType testPlanLabType) throws TestsigmaException {191 com.testsigma.util.HttpResponse<List<PlatformDevice>> response = httpClient.get(getDevicesUrl(platform,192 osVersions, testPlanLabType), getHeaders(testPlanLabType), new TypeReference<>() {193 });194 if (response.getStatusCode() < 300) {195 return response.getResponseEntity();196 } else {197 return new ArrayList<>();198 }199 }200 public PlatformDevice getPlatformDevice(Platform platform, String osVersion, String deviceName,201 TestPlanLabType testPlanLabType) throws TestsigmaException {202 com.testsigma.util.HttpResponse<PlatformDevice> response = httpClient.get(getDeviceUrl(platform,203 osVersion, deviceName, testPlanLabType), getHeaders(testPlanLabType), new TypeReference<>() {204 });205 if (response.getStatusCode() < 300) {206 return response.getResponseEntity();207 } else {208 return null;209 }210 }211 public PlatformDevice getPlatformDevice(Long platformDeviceId,212 TestPlanLabType testPlanLabType) throws TestsigmaException {213 com.testsigma.util.HttpResponse<PlatformDevice> response = httpClient.get(getDeviceUrl(platformDeviceId, testPlanLabType),214 getHeaders(testPlanLabType), new TypeReference<>() {215 });216 if (response.getStatusCode() < 300) {217 return response.getResponseEntity();218 } else {219 return null;220 }221 }222 public String getDriverPath(Platform platform, String browserVersion, Browsers browsers, String versionFolder) {223 return hybridPlatformService.getDriverPath(platform.name(), browserVersion, browsers, versionFolder);224 }225 public void closePlatformSession(TestPlanLabType testPlanLabType) throws TestsigmaException {226 if (testPlanLabType == TestPlanLabType.Hybrid) {227 hybridPlatformService.closePlatformSession();228 } else {229 throw new TestsigmaException("Execution Lab Type " + testPlanLabType + " Not Supported");230 }231 }232 private String getPlatformsBaseUrl(TestPlanLabType testPlanLabType) {233 Integrations integrations = getExternalApplicationConfig();234 if((integrations != null) && testPlanLabType == TestPlanLabType.TestsigmaLab) {235 return testsigmaOSConfigService.getUrl() + PLATFORMS_BASE_URL;236 } else {237 return testsigmaOSConfigService.getUrl() + PLATFORMS_BASE_PUBLIC_URL;238 }239 }240 private Integrations getExternalApplicationConfig() {241 try {242 Integrations integrations = integrationsService.findByApplication(243 Integration.TestsigmaLab);...

Full Screen

Full Screen

Source:PrivateGridService.java Github

copy

Full Screen

...7import com.fasterxml.jackson.databind.node.JsonNodeFactory;8import com.fasterxml.jackson.databind.node.ObjectNode;9import com.google.common.collect.Lists;10import com.testsigma.config.ApplicationConfig;11import com.testsigma.exception.TestsigmaException;12import com.testsigma.mapper.PrivateGridNodeMapper;13import com.testsigma.model.*;14import com.testsigma.repository.PrivateGridNodeRepository;15import com.testsigma.util.HttpClient;16import com.testsigma.util.HttpResponse;17import com.testsigma.web.request.IntegrationsRequest;18import com.testsigma.web.request.PrivateGridBrowserRequest;19import com.testsigma.web.request.PrivateGridNodeRequest;20import lombok.Getter;21import lombok.RequiredArgsConstructor;22import lombok.Setter;23import lombok.extern.log4j.Log4j2;24import org.apache.commons.lang3.StringUtils;25import org.apache.http.Header;26import org.apache.http.HttpHeaders;27import org.apache.http.HttpStatus;28import org.apache.http.message.BasicHeader;29import org.json.JSONArray;30import org.jsoup.Jsoup;31import org.jsoup.nodes.Document;32import org.jsoup.select.Elements;33import org.springframework.beans.factory.annotation.Autowired;34import org.springframework.stereotype.Service;35import java.util.*;36import java.util.regex.Matcher;37import java.util.regex.Pattern;38import java.util.stream.Collectors;39@Service40@RequiredArgsConstructor(onConstructor = @__(@Autowired))41@Log4j242public class PrivateGridService {43 private final HttpClient httpClient;44 private final ApplicationConfig config;45 private final PrivateGridNodeMapper nodeMapper;46 private final PrivateGridNodeRepository repository;47 @Getter48 @Setter49 private Integrations applicationConfig;50 private void fetchBrowsersFromNode(String proxy, String gridURL) throws TestsigmaException {51 HttpResponse<JsonNode> response = httpClient.get(gridURL + "/grid/api/proxy?id=" + proxy, getHeaders(), new TypeReference<JsonNode>() {52 });53 try {54 JsonNode browsers = response.getResponseEntity().get("request").get("configuration").get("capabilities");55 JSONArray validPlatforms = new JSONArray();56 for (JsonNode browser : browsers) {57 ((ObjectNode) browser).put("browserName", StringUtils.capitalize(browser.get("browserName").asText().toLowerCase().replaceAll("\\s", "")));58 ((ObjectNode) browser).put("platform", StringUtils.capitalize(browser.get("platform").asText().toLowerCase().replaceAll("\\s", "")));59 if (OSBrowserType.getBrowserEnumValueIfExists(browser.get("browserName").asText())==null){60 continue;61 }62 if (browser.get("platform").asText().contains("Win") || browser.get("platform").asText().contains("WIN"))63 ((ObjectNode) browser).put("platform", "Windows");64 validPlatforms.put(browser);65 }66 ObjectMapper mapper = new ObjectMapper();67 mapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);68 mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);69 PrivateGridBrowserRequest[] browsersList = mapper.convertValue(validPlatforms, PrivateGridBrowserRequest[].class);70 PrivateGridNodeRequest request = new PrivateGridNodeRequest();71 request.setNodeName(proxy);72 request.setGridURL(gridURL);73 request.setBrowserList(List.of(browsersList));74 PrivateGridNode node = nodeMapper.map(request);75 if (node.getBrowserList().size()<1)76 throw new TestsigmaException("Node configuration is not correct! may be unsupported browsers and platforms are added");77 this.create(node);78 } catch (Exception e) {79 log.error(e.getMessage());80 e.printStackTrace();81 if (e instanceof TestsigmaException)82 throw new TestsigmaException(e.getMessage());83 else84 throw new TestsigmaException("Unable extract and save the node configurations from your private grid");85 }86 }87 public List<String> ParseProxyIds(String gridUrl) throws TestsigmaException {88 HttpResponse<JsonNode> response = httpClient.get(gridUrl + "/grid/console", getHeaders(), new TypeReference<JsonNode>() {89 });90 Document doc = Jsoup.parse(response.toString());91 Elements proxies = doc.select("p.proxyid");92 // "((https?|ftp|gopher|telnet|file):((//)|(\\\\))+[\\w\\d:#@%/;$()~_?\\+-=\\\\\\.&]*)";93 String urlRegex = "\\b(https?|ftp|file)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]";94 List<String> parsedURLs = new ArrayList<String>();95 try {96 Pattern pattern = Pattern.compile(urlRegex, Pattern.CASE_INSENSITIVE);97 Matcher matcher = pattern.matcher(proxies.text());98 while (matcher.find()) {99 String URL = proxies.text().substring(matcher.start(0), matcher.end(0));100 if (!parsedURLs.contains(URL)) {101 parsedURLs.add(URL);102 this.fetchBrowsersFromNode(URL, gridUrl);103 }104 }105 if (!(parsedURLs.size() > 0)) {106 log.error(" No URL found with the given regex in the response message.");107 }108 } catch (Exception e) {109 log.error(e.getMessage(), e);110 if (e instanceof TestsigmaException)111 throw new TestsigmaException(e.getMessage());112 else113 throw new TestsigmaException(" : URLs extraction failed - " + e.getMessage());114 }115 return parsedURLs;116 }117 public JsonNode testIntegration(IntegrationsRequest testAuth) throws TestsigmaException {118 HttpResponse<JsonNode> response = httpClient.get(testAuth.getUrl(), getHeaders(), new TypeReference<JsonNode>() {119 });120 JsonNodeFactory jnf = JsonNodeFactory.instance;121 ObjectNode status = jnf.objectNode();122 status.put("status_code", response.getStatusCode());123 status.put("status_message", response.getStatusMessage());124 if (response.getStatusCode() == HttpStatus.SC_OK)125 this.ParseProxyIds(testAuth.getUrl());126 return status;127 }128 private List<Header> getHeaders() {129 Header contentType = new BasicHeader(HttpHeaders.CONTENT_TYPE, "application/json");130 return Lists.newArrayList(contentType);131 }...

Full Screen

Full Screen

TestsigmaException

Using AI Code Generation

copy

Full Screen

1import com.testsigma.service.PrivateGridService;2public class 2 {3public static void main(String[] args) {4PrivateGridService service = new PrivateGridService();5service.testsigmaException();6}7}8import com.testsigma.service.PrivateGridService;9public class 3 {10public static void main(String[] args) {11PrivateGridService service = new PrivateGridService();12service.testCustomException();13}14}15import com.testsigma.service.PrivateGridService;16public class 4 {17public static void main(String[] args) {18PrivateGridService service = new PrivateGridService();19service.testCustomException();20}21}22import com.testsigma.service.PrivateGridService;23public class 5 {24public static void main(String[] args) {25PrivateGridService service = new PrivateGridService();26service.testCustomException();27}28}29import com.testsigma.service.PrivateGridService;30public class 6 {31public static void main(String[] args) {32PrivateGridService service = new PrivateGridService();33service.testCustomException();34}35}36import com.testsigma.service.PrivateGridService;37public class 7 {38public static void main(String[] args) {39PrivateGridService service = new PrivateGridService();40service.testCustomException();41}42}43import com.testsigma.service.PrivateGridService;44public class 8 {45public static void main(String[] args) {46PrivateGridService service = new PrivateGridService();47service.testCustomException();48}49}50import com.testsigma.service.PrivateGridService;51public class 9 {52public static void main(String[] args) {53PrivateGridService service = new PrivateGridService();54service.testCustomException();55}56}

Full Screen

Full Screen

TestsigmaException

Using AI Code Generation

copy

Full Screen

1package com.testsigma.service;2import com.testsigma.sdk.TestsigmaException;3public class PrivateGridService {4 public static void main(String[] args) {5 PrivateGridService privateGridService = new PrivateGridService();6 privateGridService.privateGridService();7 }8 private void privateGridService() {9 try {10 PrivateGridService privateGridService = new PrivateGridService();11 privateGridService.privateGridService();12 } catch (Exception e) {13 TestsigmaException testsigmaException = new TestsigmaException(e);14 testsigmaException.printStackTrace();15 }16 }17}18package com.testsigma.service;19import com.testsigma.sdk.TestsigmaException;20public class PrivateGridService {21 public static void main(String[] args) {22 PrivateGridService privateGridService = new PrivateGridService();23 privateGridService.privateGridService();24 }25 private void privateGridService() {26 try {27 PrivateGridService privateGridService = new PrivateGridService();28 privateGridService.privateGridService();29 } catch (Exception e) {30 TestsigmaException testsigmaException = new TestsigmaException(e);31 testsigmaException.printStackTrace();32 }33 }34}35package com.testsigma.service;36import com.testsigma.sdk.TestsigmaException;37public class PrivateGridService {38 public static void main(String[] args) {39 PrivateGridService privateGridService = new PrivateGridService();40 privateGridService.privateGridService();41 }42 private void privateGridService() {43 try {44 PrivateGridService privateGridService = new PrivateGridService();45 privateGridService.privateGridService();46 } catch (Exception e) {47 TestsigmaException testsigmaException = new TestsigmaException(e);48 testsigmaException.printStackTrace();49 }50 }51}52package com.testsigma.service;53import com.testsigma.sdk.TestsigmaException;54public class PrivateGridService {55 public static void main(String[] args) {56 PrivateGridService privateGridService = new PrivateGridService();57 privateGridService.privateGridService();58 }59 private void privateGridService() {60 try {

Full Screen

Full Screen

TestsigmaException

Using AI Code Generation

copy

Full Screen

1package com.testsigma.service;2import com.testsigma.util.TestsigmaException;3public class PrivateGridService {4public static void main(String[] args) {5try {6throw new TestsigmaException("TestsigmaException");7} catch (TestsigmaException e) {8System.out.println("TestsigmaException");9}10}11}12package com.testsigma.util;13public class TestsigmaException extends Exception {14public TestsigmaException(String message) {15super(message);16}17}18package com.testsigma.service;19import com.testsigma.util.TestsigmaException;20public class PrivateGridService {21public static void main(String[] args) {22try {23throw new TestsigmaException("TestsigmaException");24} catch (TestsigmaException e) {25System.out.println("TestsigmaException");26}27}28}29package com.testsigma.util;30public class TestsigmaException extends Exception {31public TestsigmaException(String message) {32super(message);33}34}35package com.testsigma.service;36import com.testsigma.util.TestsigmaException;37public class PrivateGridService {38public static void main(String[] args) {39try {40throw new TestsigmaException("TestsigmaException");41} catch (TestsigmaException e) {42System.out.println("TestsigmaException");43}44}45}46package com.testsigma.util;47public class TestsigmaException extends Exception {48public TestsigmaException(String message) {49super(message);50}51}52package com.testsigma.service;53import com.testsigma.util.TestsigmaException;54public class PrivateGridService {55public static void main(String[] args) {56try {57throw new TestsigmaException("TestsigmaException");58} catch (TestsigmaException e) {59System.out.println("TestsigmaException");60}61}62}

Full Screen

Full Screen

TestsigmaException

Using AI Code Generation

copy

Full Screen

1package com.testsigma.service;2import com.testsigma.service.PrivateGridService;3import com.testsigma.service.TestsigmaException;4import org.openqa.selenium.WebDriver;5public class SampleTest {6 public static void main(String[] args) throws TestsigmaException {7 System.out.println(driver.getTitle());8 driver.quit();9 }10}11package com.testsigma.service;12import com.testsigma.service.PrivateGridService;13import com.testsigma.service.TestsigmaException;14import org.openqa.selenium.WebDriver;15public class SampleTest {16 public static void main(String[] args) throws TestsigmaException {17 System.out.println(driver.getTitle());18 driver.quit();19 }20}21package com.testsigma.service;22import com.testsigma.service.PrivateGridService;23import com.testsigma.service.TestsigmaException;24import org.openqa.selenium.WebDriver;25public class SampleTest {26 public static void main(String[] args) throws TestsigmaException {27 System.out.println(driver.getTitle());28 driver.quit();29 }30}31package com.testsigma.service;32import com.testsigma.service.PrivateGridService;33import com.testsigma.service.TestsigmaException;34import org.openqa.selenium.WebDriver;35public class SampleTest {36 public static void main(String[] args) throws TestsigmaException {37 System.out.println(driver.getTitle());38 driver.quit();39 }40}

Full Screen

Full Screen

TestsigmaException

Using AI Code Generation

copy

Full Screen

1package com.testsigma.service;2import java.io.IOException;3import java.util.Properties;4import com.testsigma.service.PrivateGridService;5public class TestsigmaException {6 private static String username;7 private static String password;8 private static String accessKey;9 private static String gridUrl;10 private static String browser;11 private static String browserVersion;12 private static String platform;13 private static String os;14 private static String osVersion;15 private static String deviceName;16 private static String deviceOrientation;17 private static String app;18 private static String appPackage;19 private static String appActivity;20 private static String appWaitActivity;21 private static String automationName;22 private static String deviceReadyTimeout;23 private static String newCommandTimeout;24 private static String autoWebview;25 private static String autoWebviewTimeout;26 private static String language;27 private static String locale;28 private static String unicodeKeyboard;29 private static String resetKeyboard;30 private static String orientation;31 private static String fullReset;32 private static String noReset;33 private static String appWaitPackage;34 private static String appWaitDuration;35 private static String appActivity;36 private static String appPackage;37 private static String app;38 private static String deviceName;39 private static String platformName;40 private static String platformVersion;41 private static String automationName;42 private static String browserName;43 private static String browserVersion;44 private static String deviceOrientation;45 private static String deviceReadyTimeout;46 private static String newCommandTimeout;47 private static String language;48 private static String locale;49 private static String unicodeKeyboard;50 private static String resetKeyboard;51 private static String orientation;52 private static String fullReset;53 private static String noReset;54 private static String appWaitPackage;55 private static String appWaitDuration;56 private static String appActivity;57 private static String appPackage;58 private static String app;59 private static String deviceName;60 private static String platformName;61 private static String platformVersion;62 private static String automationName;63 private static String browserName;64 private static String browserVersion;65 private static String deviceOrientation;66 private static String deviceReadyTimeout;67 private static String newCommandTimeout;68 private static String language;69 private static String locale;70 private static String unicodeKeyboard;71 private static String resetKeyboard;72 private static String orientation;73 private static String fullReset;74 private static String noReset;75 private static String appWaitPackage;76 private static String appWaitDuration;77 private static String appActivity;78 private static String appPackage;79 private static String app;80 private static String deviceName;81 private static String platformName;82 private static String platformVersion;83 private static String automationName;

Full Screen

Full Screen

TestsigmaException

Using AI Code Generation

copy

Full Screen

1import com.testsigma.service.PrivateGridService;2public class 2 {3public static void main(String[] args) {4 try{5 PrivateGridService service = new PrivateGridService();6 service.testsigmaException();7 }catch(Exception e){8 e.printStackTrace();9 }10}11}12import com.testsigma.service.PrivateGridService;13public class 3 {14public static void main(String[] args) {15 try{16 PrivateGridService service = new PrivateGridService();17 service.testsigmaException();18 }catch(Exception e){19 e.printStackTrace();20 }21}22}23import com.testsigma.service.PrivateGridService;24public class 4 {25public static void main(String[] args) {26 try{27 PrivateGridService service = new PrivateGridService();28 service.testsigmaException();29 }catch(Exception e){30 e.printStackTrace();31 }32}33}34import com.testsigma.service.PrivateGridService;35public class 5 {36public static void main(String[] args) {37 try{38 PrivateGridService service = new PrivateGridService();39 service.testsigmaException();40 }catch(Exception e){41 e.printStackTrace();42 }43}44}45import com.testsigma.service.PrivateGridService;46public class 6 {47public static void main(String[] args) {48 try{49 PrivateGridService service = new PrivateGridService();50 service.testsigmaException();51 }catch(Exception e){52 e.printStackTrace();53 }54}55}56import com.testsigma.service.PrivateGridService;57public class 7 {58public static void main(String[] args) {59 try{60 PrivateGridService service = new PrivateGridService();

Full Screen

Full Screen

TestsigmaException

Using AI Code Generation

copy

Full Screen

1import com.testsigma.service.PrivateGridService;2import com.testsigma.service.TestsigmaException;3import com.testsigma.util.TestsigmaConstants;4public class TestsigmaExceptionExample {5public static void main(String[] args) {6try{7PrivateGridService service = new PrivateGridService(TestsigmaConstants.PRIVATE_GRID_URL, TestsigmaConstants.PRIVATE_GRID_API_KEY);8service.getTestRun("1");9}catch(TestsigmaException e){10System.out.println(e.getMessage());11}12}13}14TestsigmaException(String message)15TestsigmaException(String message, Throwable cause)16getMessage()17package com.testsigma.service;18public class TestsigmaException extends Exception {19private static final long serialVersionUID = 1L;20public TestsigmaException(String message) {21super(message);22}23public TestsigmaException(String message, Throwable cause) {24super(message, cause);25}26}27import com.testsigma.service.TestsigmaException;28import com.testsigma.util.TestsigmaConstants;29public class TestsigmaExceptionExample {30public static void main(String[] args) {31try{32PrivateGridService service = new PrivateGridService(TestsigmaConstants.PRIVATE_GRID_URL, TestsigmaConstants.PRIVATE_GRID_API_KEY);33service.getTestRun("1");34}catch(TestsigmaException e){35System.out.println(e.getMessage());36}37}38}39import com.testsigma.service.TestsigmaException;40import com.testsigma.util.TestsigmaConstants;

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run Testsigma automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful