Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upGitHub is where the world builds software
Millions of developers and companies build, ship, and maintain their software on GitHub — the largest and most advanced development platform in the world.
[Up for Grabs] Switch out PhantomJS for Chromy or Puppeteer #3240
Comments
I think I will be able to make this change, I'm going to take a swing at it. |
Cool, good luck! |
Ok so after familiarizing myself with the project a bit it looks like the only change that should be required to make this change is to bump the grunt-contrib-jasmine version to ^2.0.3 But doing that causes the tests to hang after the first suite completes. Here's the truncated output of running
This is as far as it ever gets. I've tried setting the timeout smaller to see if it will timeout and it never does, It will only exit if it is forced close with Control-C. I'm not sure what to do next exactly, am I missing something obvious? I'm working with 3.9.0 on Windows 10 Thanks in advance |
@TristanNovo I ran into the same issue (tests hanging). My guess is that there's some change in reporting. That is, Jasmine is no longer getting a message back from the browser saying tests have completed, probably because the API for reporting has changed. It's really a matter of looking at the template and how Jasmine says that test results should be reported back to the main test process. |
@TristanNovo The tests are using a really old form of JS reporting, AFAIK. Really the whole Grunt / Jasmine / PhantomJS stack is rather archaic. But there should be a relatively straightforward process documented somewhere for headless testing of JS within an HTML document. There's also no specific attachment to Jasmine if there's a better-supported test runner. |
I was trying to replace Phantomjs with puppeteer by updating the grunt-contrib-jasmine version to The Jasmine main test cases are not getting run with the latest release, the ChromeHeadless browser gets launch but the test cases are not getting executed.
I have taken a look into the
Please share your thoughts on this, if you have any pointer could you please suggest me something. |
@matthew-dean I am working on replacing PhantomJS with Puppeteer and after analyzing the package with latest and older versions, I have few queries if you could help me with that it will be great:
It will be great if you could share your thoughts on this. |
@matthew-dean Thanks for the quick response, It is great that you have already fixed it, can you share when can we expect the changes to be merged in the less.js master. |
@ossdev07 If you can review that particular PR and the issue thread associated with it, that would help a lot. |
@matthew-dean I have tested the patch you shared #3442 and it is working fine for me, I have tested the patch for two architectures x86 and arm64 ( for ubuntu ) and all the tests are passing without any failure. Also regarding the issue thread associated with it as the tests were hanging earlier with jasmine but now the issue has been resolved. I would just like to suggest that it will be better if you increase the timeout from 1000ms in test/browser/generator/template.js of running the test cases as in arm64 I found out that in few tests iterations the test fails due to timeout (5/20) other than that I think your PR is good to go. |
Hi @matthew-dean, I've just tested this package on "aarch64" platform, every thing is running smoothly and all tests are getting passed except just one test. it is failing because of timeout. |
@ossdev07 I'm fine with increasing timeouts. It would really help if you could make a PR with those changes to |
Hi @matthew-dean , Timeout increase in template.js is not required, Raised PR for "generate.js", please have a look. |
PhantomJS has long created issues for continuous integration tests, where it will timeout or not download, and more recently, fail to execute browser tests under Node 4. If someone had the time to get replace it with a Chromium-based tester, a PR would be welcome.