I'm using the code provided by this blog post to capture the snapshot of an Angular page, but when I try to run
./make-snapshot.sh http://localhost:5757/#!/home
I get the error
phantomjs: command not found
Here's the contents of that file:
U=$1
P=$( echo "$U" | perl -MURI -le 'chomp($url = <>); print URI->new($url)->fragment' )
final_url=$U
P=${P:1}
final_path=./snapshots$P.html
phantomjs .phantomjs-runner.js $final_url > $final_path
More details are on this page.
phantomjs works on my terminal
The issue was , when i cloned this repo, it never downloaded the file .phantom-runner.js .
It works now!
Related
When using testcafe-browser-provider-electron, I get stuck with the mainWindowUrl. I have the original source file in the renderer folder, the version that is in the build folder and apparently a temporary created in some random /tmp/ folder. Testcafe suggests the /tmp/ file.
"Use the mainWindowUrl option to specify one of the following pages as the main window page:
file:///tmp/.mount_PROGRAM-Lbt5yL/resources/app.asar/build/renderer/index.html"
With the 6 chars being random.
How can I instruct testcafe that all files are identical?
I expected no error-message
Error: The main window page at file://....index.html was not loaded.
I reproduced this behavior. Please track the issue in the following thread: https://github.com/DevExpress/testcafe-browser-provider-electron/issues/87. We will research it and update the thread once we have any news.
Found out an alternative path to using the AppImage.
Use electron-builder to build a deb-package. Install that as it will always have the same path /opt/... to the unpacked content. You can then use that path in the specification of the mainWindowUrl.
I'm using karate v0.9.6, and it's wonderful tool.
I have a >1000 scenarios, each of them need to token for work, so i use callSingle in karate-config.js for creating and caching tokens. I use standalone jar file.
Part of my karate-config.js:
var auth_cfg = {
server: env,
credentials: karate.properties['credentials']};
var result = karate.callSingle('classpath:credentials/generate_tokens.feature', auth_cfg);
I'm using .sh file like this:
rm -rf target &&
java -Xmx2048m \
-Dlogback.configurationFile=cfg/logs_debug.xml \
-jar \
-Dcredentials=data.json \
karate-1.0.1.jar -e https://my-server/ \
--tags ~fixme \
--tags ~ignore \
--threads 4 \
features/services/simple_plan.feature
And, it's working perfectly on v.0.9.6 long time.
But, when I'm try to upgrade to v 1.0 or 1.0.1, a give an error:
org.graalvm.polyglot.PolyglotException: not found: credentials/generate_tokens.feature
I found this issue: https://github.com/intuit/karate/issues/1515
But examples not working for me. I'm trying use "file:" and karate.properties['karate.config.dir'] + '/features/auth/auth.feature'.
Always i got an error:
not found: credentials/generate_tokens.feature
Who else has faced this problem?
As you can see in the discussion of #1515 - this is why we'd really like more folks to try the RC versions and give us feedback (we spent months on this) instead of waiting for 1.0.
Yours seems to be an edge case where you are using the stand-alone JAR and a custom shell script.
My first suggestion is to use the -w flag. This is a new argument in 1.0 which can set the "current working directory", but it should default correctly in your case.
The second suggestion is to set the classpath for the JVM. Use this as a reference: https://stackoverflow.com/a/58398958/143475 - and once you do that, classpath: will work as you expect.
Else please follow this process: https://github.com/intuit/karate/wiki/How-to-Submit-an-Issue - and I have to say that unless you can help us fix this, you may have to remain on 0.9.6 for a while. Sorry.
Peter Thomas, thank you for fast response!
I modify callSingle function, and .feature file wich called by callSingle - change "classpath:" to "file:"
karate.callSingle('file:credentials/generate_tokens.feature', auth_cfg)
,
# read credentials
* def authdata = read('file:credentials/' + credentials)
and it's works now. Before, when i change classpath: to file: i, probably made a mistake.
Thanks for so awesome testing framework!
i have installed Saxon/C extension step by step, by this documentation: http://zf4.biz/blog/installing-the-saxon-c-php-extension
I must install it for PHP5, so this documentation was great. It all works fine and if i use this "php -m | grep saxon -i" command they shows me the extension:
PHP Warning: Module 'Saxon/C' already loaded in Unknown on line 0
Saxon/C
But in the phpinfo(); the extension is not listet on.
Anybody know why this dont works?
This bug issue is related to the issue #4151. The call to the method getUnderlyingValue() should take not arguments
On line 836 of the file php5_saxon.cpp please replace:
obj = ooth->xdmNode->getUnderlyingValue(NULL);
With the following:
obj = ooth->xdmNode->getUnderlyingValue();
Alternatively you can download the following file which contains the fix:
php5_saxon.cpp
You should then be able to build the Saxon/c extension for PHP5. Installation instructions given here http://www.saxonica.com/saxon-c/doc/html/index.html
According to the phantomjs docs, the --config=<filename.json> is supposed to read configuration variables from the given file. This prints out debug information:
$ phantomjs --debug=true ~/Downloads/phantomjs-2.1.1-macosx/examples/detectsniff.js http://example.com
But the following does not:
$ phantomjs --config=config.json ~/Downloads/phantomjs-2.1.1-macosx/examples/detectsniff.js http://example.com
where config.json contains the following:
{
"debug": true
}
I'm running v 2.1.1 of phantomjs (but you probably already guessed that...). Any ideas?
P.S.: I'm actually trying to track down another bug, but if I can't turn on debugging, I can't be sure if it's even getting my other config variables...
Looking through the source code it looks like it's one of the keys that do not translate directly (i.e. should be included in the list at the bottom of http://phantomjs.org/api/command-line.html).
The following works for me:
{
"printDebugMessages":true,
}
I am using CI and facing a problem while uploading file.
It gives a message mentioned below.
==================================================
Severity: Warning
Message: escapeshellarg() has been disabled for security reasons
Filename: libraries/Upload.php
Line Number: 1066
In some answers, I found that it is a server issue and CI has nothing to do with it. Now, is there any way to upload file bypassing the escapeshellarg() or is there any libraries I can use that doesn't require escapeshellarg()?
Please help.
I'm not sure which specific version of CI you're using, but the latest version does a check for that function before using it.
Take a look at the code here:
$cmd = function_exists('escapeshellarg')
? 'file --brief --mime '.escapeshellarg($file['tmp_name']).' 2>&1'
: 'file --brief --mime '.$file['tmp_name'].' 2>&1';
I'd say either upgrade or update the code manually.