[Seaside] Pharo/Seaside UI testing

Sven Van Caekenberghe sven at beta9.be
Thu Jan 20 20:33:51 UTC 2011

Hey Tony,

On 20 Jan 2011, at 19:18, Tony Fleig wrote:

> I just tried it and it seemd to work:
> http://www.tonyfleig.com/smallthoughts/blog/seasideautomatedtesting
> There's an updated version usinf Zinc in place of WebClient here:
> http://www.tonyfleig.com/smallthoughts/blog/seasideautomatedtesting2
> Let me know if it still doesn't work for you.

This is great!

Since our last discussion, I was interested to see how the redirects went and I saw that sadly you still had to them manually. So I decided to load all your code and to try to find out what went wrong. (BTW, I was already planning to check out TFLogin, so this was a good first step.)

I found the problem and commited a new version of Zn fixing the problem.

You could simplify the use of Zn in your code as follows:


	client := (ZnHttpClient new).
	client settings followRedirect: true. "actually not needed since this is the default"
	client settings timeout: 5.


	response := (client post: url data: args).
	"response isRedirect ifTrue: [
		url := self baseUrl, (response location).
		response := client get: url ]."
	^ response contents

(I added some newer API in the commented out section). This could further be simplified to:

	^ (client post: url data: args) contents

All TF-Login test are/remain green with these changes.


PS: I also applied a small fix to actually honor the timeout ;-)

BTW: There is also a Zinc-Seaside adaptor, so you could use the Zn server part as well.

More information about the seaside mailing list