Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 07:34
    sanchek synchronize #1297
  • 06:37

    asolntsev on master

    upgrade to LittleProxy 2.0.4 (compare)

  • 06:27
    asolntsev closed #1476
  • 06:27
    asolntsev commented #1476
  • 05:13
    asolntsev commented #1486
  • Jun 17 20:28
    asolntsev labeled #1486
  • Jun 17 17:11
    jaanj85 closed #1487
  • Jun 17 03:24
    jaanj85 edited #1487
  • Jun 17 03:22
    jaanj85 edited #1487
  • Jun 17 03:21
    jaanj85 edited #1487
  • Jun 17 03:19
    jaanj85 edited #1487
  • Jun 17 03:19
    jaanj85 opened #1487
  • Jun 16 16:00
    PavelOnz opened #1486
  • Jun 16 05:50

    asolntsev on master

    working on Selenide 5.23.0 (compare)

  • Jun 14 19:29

    asolntsev on master

    upgrade to Gradle 7.1 (compare)

  • Jun 14 15:14
    dbudim commented #1478
  • Jun 14 07:30
    dbudim synchronize #1478
  • Jun 14 06:57
    dbudim synchronize #1478
  • Jun 12 19:19
    dbudim synchronize #1478
  • Jun 12 19:18
    dbudim synchronize #1478
Andrey Kolesnyk
@trugaaa
I will try it tomorrow, hopes that with gradle dsl it will work fine
Andrey Kolesnyk
@trugaaa
It worked! thanks a lot!
Madhu Palagani
@MadhuPalagani_twitter
Hi Team,
executeJavaScript("return dataLayer.length") - working fine
executeJavaScript("return dataLayer") is returning stale element exception. any work around plz
Andrei Solntsev
@asolntsev
Hi. It seems your question is not related to Selenide.
Oser
@MarsOu1998
Hi,Why use Selenide to download file will generate a folder,I dont want it,please help.
image.png
my pom.xml
        <!-- https://mvnrepository.com/artifact/com.codeborne/selenide -->
        <dependency>
            <groupId>com.codeborne</groupId>
            <artifactId>selenide</artifactId>
            <version>5.19.0</version>
        </dependency>
Andrei Solntsev
@asolntsev
@MarsOu1998 Selenide generates unique folders for downloading files to be sure that none of previously downloaded files can affect current test.
@MarsOu1998 Can you describe why it’s not ok? Most probably I have a better solution for your problem.
Oser
@MarsOu1998
Thanks for repley,I switch the selenide version to 5.13.1 , everything is back to normal. :)
@asolntsev Actually,I use selenide to download files and use java to open files to do data validation,if Selenide generates folders, the program cant find the files.
Oser
@MarsOu1998
Is there a way to get the foldername the Selenide generates? I want to use the latest version of Selenide.
Andrei Solntsev
@asolntsev
@MarsOu1998 As I assumed, you are trying re-invent the bycycle.. :)
@MarsOu1998 Good news: you can simplify your code.
You don’t really need to search the downloaded file in any folders. Method $.download() returns an instance of File. This is the downloaded file. No matter what folder it’s downloaded to. You can open this file.
Something like
File theDownloadedFile = $(“input#cv”).download();
PDF pdf = new PDF(theDownloadedFile);
assertThat(pdf, containsText(“expected text here…”);
Oser
@MarsOu1998
It's glad to see your reply . Actually, I tried the way you provided yesterday , but we use js method( onClick() ) to download file
image.png
my code:
        File file = $("#mainDiv > div:nth-child(2) > div:nth-child(5) > a").download();
Here is the error:
Message: java.lang.IllegalArgumentException: The element does not have href attribute: <a class="image_button" onclick="ECUExcel()" type>Export</a>
Andrei Solntsev
@asolntsev
Ok, then try to set Configuration.fileDownload = FOLDER; somewhere in the beginning of your tests.
Oser
@MarsOu1998
Thanks, I just tried, but it doesnt seem work ,it still generates a folder even if I specify a filea path
        Configuration.fileDownload = FOLDER;
        Configuration.downloadsFolder="tests";
        Configuration.startMaximized = true;
        Configuration.timeout = 20000;
        System.setProperty("webdriver.chrome.driver", "chromedriver.exe");
        Configuration.browser = "chrome";
image.png
image.png
image.png
Andrei Solntsev
@asolntsev
@MarsOu1998 Once again, it MUST generate folder. It’s ok. You just don’t need to search any files in any folders. Just use the returned File.
Oser
@MarsOu1998
Sorry, I dont get it.When I download a file ,it will be stored on my computer disk, if I want to open it, shouldn't I specify the path?
What does "returned File" mean
Andrei Solntsev
@asolntsev
No, you shouldn’t specify any paths.
Once again:
    File file = $("#mainDiv > div:nth-child(2) > div:nth-child(5) > a").download();
    //    … this “file" is your downloaded file. No need to search it anywhere.

    // for example, you can read it:
    try (FileReader in = new FileReader(file)) {

    }

   // or get its full path:
   String path = file.getAbsolutePath();
Oser
@MarsOu1998
OMG!!It works!! You are the best person I've ever met!! Thanks for your help and sorry to bother you for so long.
Andrei Solntsev
@asolntsev
Thank you :)
Oser
@MarsOu1998
It's late at night in China, wish you a good dream tonight.
Andrei Solntsev
@asolntsev
Yes, it’s the goal of Selenide: to solve all generic technical details for you, so that you could focus on your project-specific business logic.
Oser
@MarsOu1998
ok,love u
Andrei Solntsev
@asolntsev

We released Selenide 5.20.1: "Mmm hmm, a killer feature!”

https://selenide.org/2021/03/23/selenide-5.20.1/

tann200
@tann200
Hey, how would I make sure, that selenide doesn't share session over tests?
I had to turn off parallel exections, because I had similar tests running and one test got sso session from the other test :D
Andrei Solntsev
@asolntsev
Hi @tann200 .
For sure, Selenide uses different browsers in different threads. They don't share any state.
But if you run several tests sequentially (in one thread), then they reuse the same browser. It's the default Selenide behaviour, but you can change it if needed.
I usually recommend to clean cookies, cache, localStorage etc. before every test.
tann200
@tann200
Weird, I run tests in parallel and if one test does the login, then the other, in separate class is already logged in.
so 2 classes, both open their own browser. If one test passes the authentication step and the other starts after that, then the other browser already has authentication. I also have clear cache and clear local storage after opening the base url
Andrei Solntsev
@asolntsev
Are you talking about 2 classes running in parallel - which means in 2 different threads?
Then no, they have two different browsers. They cannot influence each other.