View Code? Open in Web Editor
NEW
puppeteer UI automation test tools, record once, run everywhere, bringing you a comprehensive and enjoyable automation experience
Home Page: https://www.last-hit.com
License: MIT License
HTML 0.47%
JavaScript 0.19%
TypeScript 99.33%
last-hit's People
last-hit's Issues
search all steps with same xpath, csspath, custompath with given step
display as tree, category by story and flow
check steps
bulk update
When the user is recording a UI script, you can configure the specific name of the data-* attribute
there are 4 types of native dialog: alert
, prompt
, before unload
, confirm
.
dialogs will interrupt execution, should be caught.
file upload support record and replay
Sometimes there is no breakpoint on next of breakpointed step, seems have to set breakpoint on each step.
Or a Run one step
button is more user friendly on debugging the flow.
Hi there,
seems textarea is missed, in replayer.ts
, as below,
private async setValueToElement ( element : ElementHandle , value : string ) {
const tagName = await this . getElementTagName ( element ) ;
// console.log("tagName", tagName)
if ( tagName === 'INPUT' ) {
const type = await this . getElementType ( element ) ;
if (
! type ||
[ 'text' , 'password' , 'url' , 'search' , 'email' , 'hidden' , 'number' , 'tel' ] . includes (
type . toLowerCase ( )
)
) {
should be
if ( tagName === 'INPUT' || tagName === 'TEXTAREA' ) {
3rd libs cannot be required, very simple
after replay flow , user can find diff easily
Mac OS Catalina 10.15
Last Hit 0.3.7
Node version (v10.16.3 or v11.15.0 or v12.12.0)
When I replay, I got an error alert: "navigation failed because browser has disconnected".
maybe touch start/move/end
only in canvas?
Hi,
in our ui components, id is random generated. it will cause replay failure.
should you add a special regexp check when building xpath?
here is the sample.
currently
const ignoredIdRegexps = [ / ^md-.+-.{6,16}$/ , / ^select2-.+$/ ] ;
wanted
const ignoredIdRegexps = [ / ^md-.+-.{6,16}$/ , / ^select2-.+$/ , / ^rainbow-ui\d{15}$/ ] ;
\d{15}
is a timestamp.
Describe the bug
rename story name error
To Reproduce
Steps to reproduce the behavior:
Go to workspace
Click on right button and click rename
key in new story name
clcik ok
Expected behavior
rename success
Screenshots
Desktop (please complete the following information):
OS: mac
Browser [e.g. chrome, safari]
Version [e.g. 22]
Smartphone (please complete the following information):
Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]
Additional context
Add any other context about the problem here.
add breakpoint
replay
paused on breakpoint
switch to record
replace all steps from paused breakpoint
Hi,
We found there is an url replacement feature in CI, that's great.
But in our scenarios, in one flow, there are multiple url host need to be replaced, seems not supported yet.
Now we have to replace these urls manually, will you add this feature in next release?
Thanks.
can catch the following:
event.defaultPrevented
after Event.preventDefault()
,
event.returnValue
after been set,
return value of event handler
handler can be added by addEventListener
or onbeforeunload
.
share: open a page directly
choose image: upload
geo: alert and input
Hi!
I really like Last Hit, it seems very smooth compared to most recorders.
I noticed that Last Hit is developed in Electron, so I was wondering is Last Hit can test an Electron app.
Typically test frameworks allow you to start exes and then sense browser windows open on the computer, but i didn't see an option for capturing a browser window, only for starting a new one.
I imagine I could start an exe from Typescript with the right libraries, but how can i get Last-Hit to attach to a new browser window?
seems only inline source map working
a flow can be designated as prefix flow to another flow, then flow can be reused.
such as login flow.
display screenshot for record,replay and diff in step view