Libraries & Frameworks

We have a product that integrates with several-dozen third party applications. Our developers and testers sign up for free trial accounts with the third-parties so that we can validate that the integration workflow our users would go through will work properly after deployments are made. Some of the third-parties have very short free-trial periods, of up to 7 days.
Our QA team spends a considerable amount of time managing test credentials for these third-parties. Every week, a new set of free trial accounts need to be created in order to test the integration workflows.
We’ve considered the following options:

Contact the third parties and reach out to them and see if they’d grant us a permanent free-trial account for testing purposes.
Pay for the smallest plan every month to avoid needing to manage rotating the credentials.
Automate the process of refreshing the credentials.

I’m sure this is a common issue faced by many businesses with the amount of app marketplaces and integration opportunities that exist today. What’s the best way to manage these third-party test credentials that minimizes maintenance and manual effort?
Note that I’m not talking about test credentials for our app. This is test credentials for third-party apps that our app integrates with.

I’ve tried for days to figure this one out. I have a selector that I can’t figure out. It seems to be a regular select statement with multiple options but when clicking one option directly it changes the title on a button. I can’t figure out how to manipulate it. All I want to do is find a specific selection option and select it. I don’t need to select multiple options.

The code I’m seeing is as follows:

<select multiple=”” id=”assignTo” data-placeholder=”Select Instructor(s)” title=”Instructor(S)” name=”instructors” class=”form-control bootstrapmultiselect” style=”display: none;”>
<option value=”864979″>Joe Smith</option>
<option value=”355944″>Mary Jones</option>
<option value=”44177″>Bill Smith</option>
<option value=”551573″>Susan Carter</option>
<option value=”883308″>Brian Bird</option>
</select>

<div class=”btn-group” style=”width: 100%;”>
<button type=”button” class=”multiselect dropdown-toggle btn btn-default” data-toggle=”dropdown” title=”None selected” style=”width: 100%;”>None selected <strong class=”caret”></strong></button>

Here’s the code I’ve tried:

drop = select(driver.find_element_by_id(‘assignTo’))
instructor_option = WebDriverWait(driver,5).until(lambda x: x.find_element_by_xpath(“//select[@id=’assignTo’]/option[text()=’Bill Smith’]”))
instructor_option.select()

Any ideas? I appreciate any help at all!

I m trying to click on the dropdown menu item and i am able to select the dropdown and the menu item but instead of clicking on item the click is going to the element right under it.

Before the dropdown code, I am executing the following code to close the pop up window

driver.switchTo().window(windowHandle).close();
driver.switchTo().window(driver.getWindowHandles().toArray()[0].toString());

I think this might have something to do with click going to wrong item

JAVA CODE

driver.findElement(By.xpath(“//*[@id=’ext-gen32′]/table/tbody/tr[2]/td[2]/em[@class=’x-btn-split’]”)).click();
org.openqa.selenium.interactions.Actions action = new org.openqa.selenium.interactions.Actions(driver);
boolean ele = isElementPresent(By.xpath(Configurations.getServiceLocator(“sc.cases.arrow”)));
String arrow = “//*[@id=’ext-gen32′]”;
WebElement elem = driver.findElement(By.xpath(arrow));
action.moveToElement(elem, 235, 17);
action.click().perform();

List<WebElement> sideBarElements = getElements(By
.cssSelector(“a.x-menu-item”));

for (WebElement element : sideBarElements) {
if (element.getText().equalsIgnoreCase(“Lookup Contact”)) {
element.click();
break;
}
}

HTML

<div id=”servicedesk” class=” x-border-panel x-border-layout-ct” style=”left: 0px; top: 65px; width: 1680px; height: 553px;”>
<div id=”navigatortab” class=” x-plain undefined sd_nav_tabpanel x-border-panel” style=”left: 0px; top: 0px; width: 1680px;”>
<div class=”support-servicedesk-navigator” id=”ext-gen32″ style=”background: rgb(229, 231, 233);”>
<table id=”ext-comp-1006″ cellspacing=”0″ class=”x-btn support-servicedesk-sb Custom9Mru mruIcon support-servicedesk-sbactive x-btn-noicon” style=”width: 250px; height: 26px;”>
<tbody class=”x-btn-small x-btn-icon-small-left”>
<tr>
<td class=”x-btn-tl”><i>&nbsp;</i></td>
<td class=”x-btn-tc”></td>
<td class=”x-btn-tr”><i>&nbsp;</i></td>
</tr>
<tr>
<td class=”x-btn-ml”><i>&nbsp;</i></td>
<td class=”x-btn-mc”><em class=”x-btn-split” unselectable=”on” id=”ext-gen92″><button type=”button” id=”ext-gen33″ class=” x-btn-text”><div class=”mruIcon”></div><span>Lookup Contact</span></button></em></td>
<td class=”x-btn-mr”><i>&nbsp;</i></td>
</tr>
<tr>
<td class=”x-btn-bl”><i>&nbsp;</i></td>
<td class=”x-btn-bc”></td>
<td class=”x-btn-br”><i>&nbsp;</i></td>
</tr>
</tbody>
</table>
</div>
<div class=”x-plain-header sd_primary_tabstrip x-unselectable” id=”ext-gen22″ style=”background: rgb(229, 231, 233); width: 1680px;”>
<div class=”x-tab-tabmenu-right” id=”ext-gen36″></div>
<div class=”x-tab-strip-wrap” id=”ext-gen25″ style=”width: 1408px; left: 250px;”>
<ul class=”x-tab-strip x-tab-strip-top” id=”ext-gen27″ style=”background: rgb(229, 231, 233);”>
<li class=” x-tab-strip-active” id=”navigatortab__ext-comp-1004″ style=”display: none;”>
<a class=”x-tab-strip-close” id=”ext-gen30″></a><a class=”x-tab-right” href=”#” id=”ext-gen31″><em class=”x-tab-left”><span class=”x-tab-strip-inner”><span class=”x-tab-strip-text “></span></span></em></a></li>
<li class=”add-tab-btn” id=”navigatortabaddTabButton”>
<a class=”x-tab-strip-close”></a><a class=”x-tab-right” href=”#” id=”ext-gen35″ style=”padding-left: 6px;”><em class=”x-tab-left” id=”ext-gen34″ style=”padding-right: 6px;”><span class=”x-tab-strip-inner”><span class=”x-tab-strip-text “></span></span></em></a></li>
<li class=”x-tab-edge” id=”ext-gen28″><span class=”x-tab-strip-text”>&nbsp;</span></li>
<div class=”x-clear” id=”ext-gen29″></div>
</ul>
</div>
<div class=”x-tab-strip-spacer” id=”ext-gen26″></div>
</div>
<div class=”x-plain-bwrap” id=”ext-gen23″>
<div class=”x-plain-body sd_nav_tabpanel_body x-tab-panel-body-top” id=”ext-gen24″ style=”width: 1680px; height: 521px;”>
<div id=”ext-comp-1004″ class=”” style=”width: 1680px; height: 521px;”>
<iframe id=”ext-comp-1005″ name=”ext-comp-1005″ frameborder=”0″ allow=”camera *; geolocation *; microphone *” src=”/servlet/servlet.Integration?lid=01rd00000007Ruf&amp;ic=1&amp;linkToken=VmpFPSxNakF4T1Mwd015MHdNVlF3TkRveE56bzBNQzR5T0RKYSx2Sm81dVNhWlBVLTRMQlMtVW01c3J1LFlXWmtNR0po&amp;isdtp=nv&amp;nonce=182e776daf5f434d79f1d86ca453d03c6e18161b87fd78f9c08805c6dbd4ab4b&amp;sfdcIFrameOrigin=https%3A%2F%2Fintuit.my.salesforce.com” style=”width: 1680px; height: 521px;”></iframe>
</div>
</div>
</div>
</div>
</div>

Dropdown Html

<div id=”navigator-sbmenu” class=”x-menu x-menu-floating x-layer x-hide-offsets” style=”position: absolute; z-index: 15000; visibility: hidden; left: -10000px; top: -10000px; width: 250px;”>
<a class=”x-menu-focus” href=”#” onclick=”return false;” tabindex=”-1″ id=”ext-gen93″></a>
<ul class=”x-menu-list” id=”ext-gen94″ style=”height: 392px;”>
<li id=”x-menu-el-nav-tab-0″ class=”x-menu-list-item”>
<a id=”nav-tab-0″ class=”x-menu-item Custom103Mru userDefinedMRU 01541000002eEOg sd-nav-menu-item” hidefocus=”true” unselectable=”on” href=”#”><img alt=”” src=”https://intuit–c.na75.content.force.com/servlet/servlet.ImageServer?id=01541000002eEOg&amp;oid=00DE0000000a8TL&amp;lastMod=1504832300000″ class=”x-menu-item-icon Custom103Mru userDefinedMRU 01541000002eEOg mruIcon” id=”ext-gen96″><span class=”x-menu-item-text” id=”ext-gen97″>My Clients</span></a>
</li>
<li id=”x-menu-el-nav-tab-1″ class=”x-menu-list-item”>
<a id=”nav-tab-1″ class=”x-menu-item Custom91Mru sd-nav-menu-item” hidefocus=”true” unselectable=”on” href=”#”><img alt=”” src=”data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==” class=”x-menu-item-icon Custom91Mru mruIcon” id=”ext-gen98″><span class=”x-menu-item-text” id=”ext-gen99″>Team Summary</span></a>
</li>
<li id=”x-menu-el-nav-tab-2″ class=”x-menu-list-item”>
<a id=”nav-tab-2″ class=”x-menu-item Custom153Mru userDefinedMRU 01541000002eERQ sd-nav-menu-item” hidefocus=”true” unselectable=”on” href=”#”><img alt=”” src=”https://intuit–c.na75.content.force.com/servlet/servlet.ImageServer?id=01541000002eERQ&amp;oid=00DE0000000a8TL&amp;lastMod=1504833236000″ class=”x-menu-item-icon Custom153Mru userDefinedMRU 01541000002eERQ mruIcon” id=”ext-gen100″><span class=”x-menu-item-text” id=”ext-gen101″>Calendar</span></a>
</li>
<li id=”x-menu-el-nav-tab-3″ class=”x-menu-list-item”>
<a id=”nav-tab-3″ class=”x-menu-item caseMru standardObject sd-nav-menu-item” hidefocus=”true” unselectable=”on” href=”#”><img alt=”” src=”data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==” class=”x-menu-item-icon caseMru standardObject mruIcon” id=”ext-gen102″><span class=”x-menu-item-text” id=”ext-gen103″>Cases</span></a>
</li>
<li id=”x-menu-el-nav-tab-4″ class=”x-menu-list-item”>
<a id=”nav-tab-4″ class=”x-menu-item Custom37Mru sd-nav-menu-item” hidefocus=”true” unselectable=”on” href=”#”><img alt=”” src=”data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==” class=”x-menu-item-icon Custom37Mru mruIcon” id=”ext-gen104″><span class=”x-menu-item-text” id=”ext-gen105″>Lookup Online Account</span></a>
</li>
<li id=”x-menu-el-nav-tab-5″ class=”x-menu-list-item support-servicedesk-sbmenuitemselected”>
<a id=”nav-tab-5″ class=”x-menu-item Custom9Mru sd-nav-menu-item” hidefocus=”true” unselectable=”on” href=”#”><img alt=”” src=”data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==” class=”x-menu-item-icon Custom9Mru mruIcon” id=”ext-gen106″><span class=”x-menu-item-text” id=”ext-gen107″>Lookup Contact</span></a>
</li>
<li id=”x-menu-el-nav-tab-6″ class=”x-menu-list-item”>
<a id=”nav-tab-6″ class=”x-menu-item Custom67Mru sd-nav-menu-item” hidefocus=”true” unselectable=”on” href=”#”><img alt=”” src=”data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==” class=”x-menu-item-icon Custom67Mru mruIcon” id=”ext-gen108″><span class=”x-menu-item-text” id=”ext-gen109″>Order Search</span></a>
</li>
<li id=”x-menu-el-nav-tab-7″ class=”x-menu-list-item”>
<a id=”nav-tab-7″ class=”x-menu-item contactMru standardObject sd-nav-menu-item” hidefocus=”true” unselectable=”on” href=”#”><img alt=”” src=”data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==” class=”x-menu-item-icon contactMru standardObject mruIcon” id=”ext-gen110″><span class=”x-menu-item-text” id=”ext-gen111″>Contacts</span></a>
</li>
<li id=”x-menu-el-nav-tab-8″ class=”x-menu-list-item”>
<a id=”nav-tab-8″ class=”x-menu-item Custom123Mru userDefinedMRU 01541000001GoUv sd-nav-menu-item” hidefocus=”true” unselectable=”on” href=”#”><img alt=”” src=”https://intuit–c.na75.content.force.com/servlet/servlet.ImageServer?id=01541000001GoUv&amp;oid=00DE0000000a8TL&amp;lastMod=1484285285000″ class=”x-menu-item-icon Custom123Mru userDefinedMRU 01541000001GoUv mruIcon” id=”ext-gen112″><span class=”x-menu-item-text” id=”ext-gen113″>Lookup EFE</span></a>
</li>
<li id=”x-menu-el-nav-tab-9″ class=”x-menu-list-item”>
<a id=”nav-tab-9″ class=”x-menu-item Custom90Mru sd-nav-menu-item” hidefocus=”true” unselectable=”on” href=”#”><img alt=”” src=”data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==” class=”x-menu-item-icon Custom90Mru mruIcon” id=”ext-gen114″><span class=”x-menu-item-text” id=”ext-gen115″>My Scorecard</span></a>
</li>
<li id=”x-menu-el-nav-tab-10″ class=”x-menu-list-item”>
<a id=”nav-tab-10″ class=”x-menu-item Custom50Mru sd-nav-menu-item” hidefocus=”true” unselectable=”on” href=”#”><img alt=”” src=”data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==” class=”x-menu-item-icon Custom50Mru mruIcon” id=”ext-gen116″><span class=”x-menu-item-text” id=”ext-gen117″>Learning Dashboard</span></a>
</li>
<li id=”x-menu-el-nav-tab-11″ class=”x-menu-list-item”>
<a id=”nav-tab-11″ class=”x-menu-item Custom15Mru sd-nav-menu-item” hidefocus=”true” unselectable=”on” href=”#”><img alt=”” src=”data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==” class=”x-menu-item-icon Custom15Mru mruIcon” id=”ext-gen118″><span class=”x-menu-item-text” id=”ext-gen119″>Employee Profile Updater</span></a>
</li>
<li id=”x-menu-el-nav-tab-12″ class=”x-menu-list-item”>
<a id=”nav-tab-12″ class=”x-menu-item Custom20Mru sd-nav-menu-item” hidefocus=”true” unselectable=”on” href=”#”><img alt=”” src=”data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==” class=”x-menu-item-icon Custom20Mru mruIcon” id=”ext-gen120″><span class=”x-menu-item-text” id=”ext-gen121″>Bulk Policy Removal</span></a>
</li>
<li id=”x-menu-el-nav-tab-13″ class=”x-menu-list-item”>
<a id=”nav-tab-13″ class=”x-menu-item Custom39Mru sd-nav-menu-item” hidefocus=”true” unselectable=”on” href=”#”><img alt=”” src=”data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==” class=”x-menu-item-icon Custom39Mru mruIcon” id=”ext-gen122″><span class=”x-menu-item-text” id=”ext-gen123″>Lookup Online TTA Account</span></a>
</li>
</ul>
</div>

I’m writing a Python program (with Selenium) to automatically download data from a website and then log out, but cannot figure out how to get to the logout menu item, which is in a drop-down list. I’m a NOOB at this, so please bear with me.
I’ve reviewed a number of posts here to see if I could sort it out (including this one), to no avail.
Here is the HTML code; the item that renders the dropdown list is highlighted. No matter what I try, Selenium either cannot find the item I need to click or it finds the item and says it’s not clickable. How do I get the dropdown menu to appear so I can click on the “Logout” list item?

Once I get the dropdown menu to appear, I need to select the item with an ID of “logout” in the HTML code below. What is the proper way to do this?

On my page, I have 25 Links displayed inside a web table, now i have to traverse all pagination pages, like 1-25, 25-50, 50-75 etc…my specific link text can be in any pagination set, it can be on any page.
<<previous |1 – 25 of 125| next>>

If the link text matches my string, then click otherwise keep on clicking on “next” button until i find the link. Problem is i am getting “org.openqa.selenium.StaleElementReferenceException: stale element reference: stale element not found
as the Webelement is not longer in DOM. I have tried few methods but its not working.
Method 1:
List<WebElement> links = new ArrayList<WebElement>();
links = driver.findElements(By.xpath(“//table[contains(@id,’table1′)]//tr//a”));
if (links.get(i).getText().equalsIgnoreCase(MatchString)) {
links.get(0).click();
break;
}
driver.findElement(By.linkText(“next”)).click();

}
Method2:
for (int i = 1; i < links.size(); i++) {
//// links = driver.findElements(By.xpath(“//table[contains(@id,’table1′)]//tr//a”));
// links = new ArrayList<WebElement>();
// links = driver.findElements(By.tagName(“a”));
// driver.navigate().refresh();
//
//
// if (links.get(i).getText().trim().equalsIgnoreCase(MatchString.trim())) {
// links.get(i).click();
// System.out.println(“Link is clicked”);
// break;
// }
//
// else {
// driver.findElement(By.linkText(“next”)).click();
//
// }
// }

I have extracted the jwt token from the User login controller through my http service my test plan looks like this:

As seen in the images in login request it takes the header of Breakdown Configuration and it doesn’t take authorization token value pass as a JSON object in Bearer ${token} although I have extracted it in JSON extractor and debug sampler shows it. I have also used the once only controller but it doesn’t solve the issue.
Please help in the nested Header Manager and how to use it correctly. Even I have used Bean Shell processor under my GETALL Bd-config request and pass the command:
import org.apache.jmeter.protocol.http.control.Header;
sampler.getHeaderManager().add(new Header(“Authorization”,”Bearer ” + vars.get(“BEARER”)));

But it doesn’t solve the issue. Please guide.

So at my current job I’m at a pinch, we can’t just download executable jars and use them. We have to request to download whatever we want . So the problem is , our chrome gets auto updated where as we need to ask for permission to download chromeDriver(all drivers in general). This is a lengthy process and is not feasible . By the time they approve it, a new version of chrome is usually out . So It’s very difficult to get the automation testing started , our chrome and chrome driver versions are always different . I was planning to use Java with selenium but at this point , this is blocking it from happening .
Is there any alternative to this ? I tried using webdriverManager but that dependency is not in our dependency library so that’s not a option aswell. Our system blocks the required files to download when trying to implement that dependency.
At this point , I’m even willing to use python if there is a way to ignore the webdriver executable jar issue . Is there any kind of framework I can use that dosent require a instance of webdriver .

Business Process Automation (BPA) enhances workflow efficiency by automating repetitive tasks, thus reducing human errors and operational costs. It integrates technology into everyday business processes to improve service quality and accelerate delivery. Ideal for tasks like data management and customer service, the blog discusses how BPA streamlines operations and allocates resources effectively, promoting strategic innovation and business growth.
The post How does Business Process Automation Improve Workflow Efficiency? first appeared on TestingXperts.

I have an error in my Jenkins + Selenium integration, the Selenium Grid Version is 3.7.1 (Installed by default for the Jenkins Selenium Plugin). I’m using the last chromedriver version. When I run my test on Jenkins the I get the following errors:

org.openqa.selenium.SessionNotCreatedException: Unable to create new service: ChromeDriverService

Build info: version: ‘3.7.1’, revision: ‘8a0099a’, time: ‘2017-11-06T21:07:36.161Z’
System info: host: ‘xxxxxxx’, ip: ‘xxxxxxxx’, os.name: ‘Windows Server 2012 R2’, os.arch: ‘x86’, os.version: ‘6.3’, java.version: ‘1.8.0_66’
Driver info: driver.version: unknown
Command duration or timeout: 187 milliseconds
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:214)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:166)
at org.openqa.selenium.remote.JsonWireProtocolResponse.lambda$new$0(JsonWireProtocolResponse.java:53)
at org.openqa.selenium.remote.JsonWireProtocolResponse.lambda$getResponseFunction$2(JsonWireProtocolResponse.java:91)
at org.openqa.selenium.remote.ProtocolHandshake.lambda$createSession$0(ProtocolHandshake.java:123)
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
at java.util.Spliterators$ArraySpliterator.tryAdvance(Spliterators.java:958)
at java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:126)
at java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:498)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:485)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
at java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:152)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:464)
at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:126)
at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:73)
at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:138)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:601)
at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:219)
at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:142)
at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:155)
at com.xxxxxxxx.util.utilities.DriverUtils.configureDriver(DriverUtils.java:47)
at com.xxxxxxxxx.features.accederSistema.iniciarSesion.CP01IniciarSesion.openNavigatorToLogin(CP01IniciarSesion.java:52)

When I execute a test case, I meet a blocked issue ‘QP-12’ in my test case list. So I can’t test cases QP-13 – 17, because there are a series of test cases of ‘QP-12’.
In this case, to share with QA & Dev-team – what do I call ‘QP-12’?
For example, “Dear All, QP-12 is a xxxx issue so I can’t continue to execute other test cases, it is a high priority issue, please check the issue!”

Blocked
Blocker
Blockage

In my opinion, No.1 is acceptable, No.2 is weird to call a test case, and No.3 is acceptable.
Please answer using words each own field.
Thank you for time to read.

I am wondering if multiple thread groups can be made non-active/sleeping at the same time.
I need multiple thread groups that run infinitely, with alternating intervals times of being all active and being all asleep/non-active. This is to simulate ongoing periods of high and low/no activity. It seems there are only controllers and ‘think time’ objects inside thread groups but not across thread groups.
My test plan is rather simple in structure.

Test plan (parallel execution of all thread groups)

thread group 1 – infinite
thread group 2 – infinite

According to their website, they provide unique solutions which I added below. What do you think about it?
Emakin BPMS provides distinct advantages with many features that will make your work life easier.
Digital Transformation
Emakin BPMS provides a flexible platform to digitalize your business processes rapidly, easily, safely and flawlessly in no time.
Process Management
Emakin BPMS includes user-friendly business modeling, business activity monitoring dashboards, and rich task and case management capabilities.
Mobility
Mobility, helps you to get things done from anywhere, anytime without compromising the organization’s security.
Low-Code
Low-Code enables to develop business-oriented applications with visual and easy-to-use tools for rapid development.
Rule Engine
Rule Engine centralizes business rules and creates a “single source of truth” spread across the enterprise to prevent hard-coded rules in applications.
Case Management
Case Management enables organizations to manage unpredictable, information-centric work which increases productivity and ensures continuity.
Team Channels
Team channels provide a unified communication interface to keep everyone in sync and work more productively.
Integration
Emakin provides powerful forms to embed into any application and comprehensive API methods.

I am trying to read an excel file and validate the values.

While reading one of the columns which has decimal values, the digits after the decimal point are not correctly retrieved. Suppose, I am trying to read -117035791.877483 number but the result I am retrieving is -1.1703579187748297E8 (which is in exponential format and don’t want that format) if I directly read using below method.

double d = cell.getNumericCellValue();

I also tried converting the same number to decimal first as below code, but it is adding more digits after decimal point like -117035791.87748297.

String s = BigDecimal.valueOf(cell.getNumericCellValue()).toPlainString();

I also tried to retrieve value directly as String value but still, the problem persists. Please suggest the way through which I will get Exact value with decimal points from excel.

The structure of the Html I need to work with is shown in the screenshots below.

I need to get the values of the first and third column of each data row in the table. There is nothing unique about the rows or cells.

I’ve tried:

//String CPONEW=”//table[@id=’GridView1′]/tbody/tr[2][‘@id!= or @class=!”+j+”‘]/td[1]”;

When I try to use this xpath I only get the first tr[2]/td[1] val but I need to get each tr[2] to tr[12] / td[1] and td[3] values

This is the source code of the webpage ( https://eu.luxpowertek.com/WManage/web/login ) I am trying to login in and click the submit button.
<div id=”loginFormContainer” style=”margin: 0 auto; width: 450px; position: relative;”>
<form id=”loginHolder” action=”/WManage/web/login” method=”post”>
<h2 class=”title” style=”text-align: center; margin-top: 0;”>
Monitor Center
</h2>
<div class=”form-horizontal” style=”padding: 10px 10px 0 10px;”>

<div class=”form-group”>
<div class=”input-group col-sm-12″>
<span class=”input-group-addon” style=”width: 45px;”><img src=”https://resource.solarcloudsystem.com/WManage/web/img/format/icons/user.png?v=2.0.4.4″ height=”16″ /></span>
<input type=”text” class=”form-control input-lg” id=”account” name=”account” value=”” maxLength=”30″ autofocus autocomplete=”off” placeholder=”Please enter username”>
</div>
</div>
<div class=”form-group” style=”margin-bottom: 10px;”>
<div class=”input-group col-sm-12″>
<span class=”input-group-addon” style=”width: 45px;”><img src=”https://resource.solarcloudsystem.com/WManage/web/img/format/icons/key.png?v=2.0.4.4″ height=”16″ /></span>
<input type=”password” class=”form-control input-lg” id=”password” name=”password” maxLength=”50″ placeholder=”Please enter password”>
</div>

</div>

<div style=”width: 100%; margin-bottom: 10px;”>
<a href=”forgetPassword” style=”float: right; color: inherit;” target=”_blank”>Forget password?</a>
<div style=”clear: both;”></div>
</div>

<div class=”form-group”>
<button type=”submit” class=”btn btn-lg btn-success” style=”width: calc(100% – 115px); margin-right: 5px;”>Sign in</button>
<a class=”btn btn-lg btn-default” style=”width: 106px;” href=”/WManage/web/register”>Register</a>
</div>

<div class=”form-group” style=”margin-bottom: 5px;”>

<a href=”/WManage/web/login/viewDemoPlant?customCompany=” type=”button” class=”btn btn-lg btn-success” style=”width: calc(100% – 115px); margin-right: 5px;”>Visit demo station</a>

<a class=”btn btn-lg btn-default” style=”width: 106px;” href=”/WManage/web/warranty/register”>Warranty</a>
</div>
</div>
</form>
</div>

Here is my python code with all the various different ways I have tried so far to click the button. The username and password are just dummy code in this sample.
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.service import Service
service = Service(‘/usr/bin/chromedriver’)

driver = webdriver.Chrome(service=service)
driver.get(‘https://eu.luxpowertek.com/WManage/web/login’)

username = “uyuytuyreue745@mygmail.com”
password = “kinghferyrt”

# find username/email field and send the username itself to the input field
driver.find_element(“id”, “account”).send_keys(username)
# find password input field and insert password as well
driver.find_element(“id”, “password”).send_keys(password)
# click login button
driver.find_element(By.XPATH(“(//button[contains(text(),’Sign In’)])[2]”));

So the actual submit button has no ID and this is where I think I am getting confues will all the different ways of selecting it like by Selector, By XPATH by.xxxxx etc
Sign in
Any help would be most appreciated, also it appears that the code syntax of selenium has changed over the years as many code samples I have found do not work any more like driver.find_element_by_xpath which is now (I believe) driver.find_element(By.XPATH,xxxx)