by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Aug 07 19:21
    BorisOsipov commented #5701
  • Aug 07 19:06
    satyasreem commented #5701
  • Aug 07 19:06
    satyasreem commented #5701
  • Aug 07 18:51
    satyasreem commented #5701
  • Aug 07 18:36
    satyasreem commented #5701
  • Aug 07 18:35
    satyasreem commented #5701
  • Aug 07 17:58
    christian-bromann commented #5699
  • Aug 07 17:21
    jayandran-Sampath commented #5699
  • Aug 07 14:16

    christian-bromann on master

    Fix prototypes for items in get… (compare)

  • Aug 07 14:16
    christian-bromann closed #5705
  • Aug 07 14:16
    christian-bromann closed #5703
  • Aug 07 14:16
    christian-bromann labeled #5705
  • Aug 07 13:53
    osmolyar commented #4134
  • Aug 07 13:53
    osmolyar commented #4134
  • Aug 07 13:53
    L0tso commented #5703
  • Aug 07 13:49
    codecov[bot] commented #3148
  • Aug 07 13:49
    codecov[bot] commented #5040
  • Aug 07 13:49
    jsf-clabot commented #5705
  • Aug 07 13:48
    jsf-clabot commented #5705
  • Aug 07 13:48
    L0tso opened #5705
Christian Bromann
@christian-bromann
please add jasmineNodeOpts to your wdio conf
even if it is an empty object
hellis007
@hellis007
ok, will do. let me give it a try! thanks
worked like a charm! my test runner is going through fine.
Christian Bromann
@christian-bromann
issue created webdriverio/webdriverio#691
hellis007
@hellis007
thanks christian
slawomir-brzezinski-at-travcorp
@slawomir-brzezinski-at-travcorp
Hey @christian-bromann . The reason for my yesterday's problem was onComplete not firing. And the reason behind that capabilities had an invalid falsy entry created by: [, { browserName: 'chrome' }] (note the comma).
(It was left by some hasty trimmings of the sample project by fellow dev. Seriously! :smile: )
slawomir-brzezinski-at-travcorp
@slawomir-brzezinski-at-travcorp
nevertheless, I guess caps could use some removal of falsies, because it seems that the underlying infrastructure doesn't mind them (the tests were running fine)
Johan Thallauer
@JohanTh

hello, when I try to search for a dom element that has been removed:

return this.client
    .waitForExist("selector", undefined, true)
    .should.eventually.be.true;

I get:

AssertionError: expected undefined to be true
Christian Bromann
@christian-bromann
return this.client
    .isExisting("selector")
    .should.eventually.be.false;
Johan Thallauer
@JohanTh

@christian-bromann that gives me

AssertionError: expected true to be false

Christian Bromann
@christian-bromann
then the selector wasn’t removed from the page :wink:
Johan Thallauer
@JohanTh
I can inspect the element in the mirror after this step fails and see that it is gone :worried:
Christian Bromann
@christian-bromann
ok, try this:
return this.client
    .waitForExist("selector", 5000, true)
    .should.eventually.be.true;
this increases the timeout
Johan Thallauer
@JohanTh

that still gave me:

AssertionError: expected undefined to be true

Christian Bromann
@christian-bromann
mhm..and how about:
return this.client
    .waitForExist("selector", 5000, true)
    .isExisting("selector")
    .should.eventually.be.false;
Johan Thallauer
@JohanTh
oh no, sorry, the problem is that I'm an idiot. I had two steps with almost identical names who was doing checks on the same element. What's in the cheat sheet works.
Miguel Rivera
@miguelrivera
Guys, does anyone know how to set a certain screen resolution when using phantomjs? I suspect it must be some capability one adds, right?
Christian Bromann
@christian-bromann
@miguelrivera just call http://webdriver.io/api/window/setViewportSize.html right after calling init
Miguel Rivera
@miguelrivera
of course you had a method for that, damn this driver is good!
Christian Bromann
@christian-bromann
;)
even two, one for setting the viewport and one for setting window size ;)
Miguel Rivera
@miguelrivera
That was my next question, haha
Christian Bromann
@christian-bromann
but I am not sure if these work in phantomjs since it is a headless browser
Miguel Rivera
@miguelrivera
Worked just fine!
Christian Bromann
@christian-bromann
cool
Miguel Rivera
@miguelrivera
btw, any suggestions on the best way to wait for a modal backdrop to go away?
Christian Bromann
@christian-bromann
all waitfor commands have a reverse flag so waitforexist is like waitforwentaway or sth like this
Miguel Rivera
@miguelrivera
Ok
Dan Dascalescu
@dandv
I'd like to have one test suite in Gherkin syntax, and run it against some headless browser first (which one, is another good question) before running it against Selenium in the cloud (which is slow and expensive). How can I do that? Is it also likely that some tests may fail in the headless browser but they'll work in a real browser? If so, how can I specify in the test suite or config files that certain tests are to be run only against Selenium?
Dan Dascalescu
@dandv

@dandv I was experimenting with fibers to get sync in webdriverio .. got it working for protocol commands but not for nested commands, definitelly something I wanna add to webdriverio

Is there any work underway from the Xolvio guys, or only plans at this stage? https://github.com/meteor-velocity/velocity/issues/254#issuecomment-127039842 Curious if they got in touch with you (I'm a Meteor user).

Miguel Rivera
@miguelrivera
Anyone who's has tried to trigger client side events? For instance to trigger the change event on a certain <input>?
slawomir-brzezinski-at-travcorp
@slawomir-brzezinski-at-travcorp
I'm running WDIO with cucumber. For debugging purposes, what's the best way to make it not close the browser when the test fails?
Johan Thallauer
@JohanTh
can we click a <a href="findThis">link</a> by its href value?
Miguel Rivera
@miguelrivera
@JohanTh Yep... browser.click("a[href=\"findThis\"]")
Johan Thallauer
@JohanTh
ohh thank you :)
Jaroslav Kubíček
@jaroslav-kubicek
Hi, I was looking forward to update that will cause that waitForXXX fails when element isn't found before timeout, it was already implemented, but then it was rewritten back to original: webdriverio/webdriverio@59e3c79 Is there any plan to change it or some good practice how to deal with it? I want to write the smallest possible amount of code like this:
it 'wait for load', (done) ->
  client.waitForExist 'selector', done
Christian Bromann
@christian-bromann
@dandv headless browser: checkout phantomjs http://phantomjs.org/, install and do in your config: browserName: “phantomjs”, yes this might be likely but a common case - phantomjs is good for developing/writing your test specs and then run them across different browser in your ci system, it might be a good idea to have multiple config files for dev and ci environment

Is there any work underway from the Xolvio guys, or only plans at this stage?

I am in contact with the sam and sanjo. Last one got fibers working in chimp which looks really awesome. I haven’t had much time to port that fully to webdriverio. My plan is to let user decide how to handle async. people will be able to decide whether they want to write synchronous tests only, promise chains only or a mixure using promises and yield .. so excited for that

Christian Bromann
@christian-bromann

Anyone who's has tried to trigger client side events? For instance to trigger the change event on a certain <input>?

nope, you can inject javascript to trigger it, using addCommand you can make yourself handy commands to invoke different events. Wondering if something like a trigger command would be useful that would fullfil such thing (would only work in desktop browser though)

I'm running WDIO with cucumber. For debugging purposes, what's the best way to make it not close the browser when the test fails?

make use of the debug command: http://webdriver.io/api/utility/debug.html .. it let you jump into the browser before an assertion

Christian Bromann
@christian-bromann
@jaroslav-kubicek in v3 please use promises to handle errors:
it('wait for load', function(done) {
  client.waitForExist('selector').catch(done).call(done);
});
more convenient:
function seal(cb) {
    return function() {
     cb();
   }
}

it('wait for load', function(done) {
  client.waitForExist('selector').then(seal(done), done);
});
Jaroslav Kubíček
@jaroslav-kubicek
great, that’s enough, thanks!