After a major cleanup of the structure and logic due to a handful of issues, v4.1 of the Project Importer is now available!
You can download the latest version here:
https://sourceforge.net/projects/web2project-mod/files/Project-Importer/
The purpose of the Project Importer is to allow users to import their project plans from other systems. Currently Microsoft Project and WBS Gantt Chart Pro are supported.
The significant changes in this release include:
There is a goal to support additional file type imports. At present, CSV - as an Excel export - is one option but is the most difficult due to a lack of formal/official column/field structure that a user could create. If anyone has any suggestions, please feel free to share them in our forums.
The Project Importer can be downloaded here: https://sourceforge.net/projects/web2project-mod/files/Project-Importer/
I am using Zend Studio for my everyday PHP work, and I like it. I know many others do too, or use PDT. It has one very cool – though not widely known – feature that allows you you to add unknown extensions to code completion. I.e., if you have some extension, create stub file with PHPDOC descriptions – i.e. something like this:
/**
* Do stuff
* @param string $arg
* @return array
*/
function dostuff($arg) {}
for each extension function, Studio will know to pick it up. You can put this file into Studio’s prototypes directory – easiest way to find it is just write something like chdir() anywhere, select the name and press F3, the directory of the file that you’ll get is the one you need.
However, the problem is how to create this file. E.g., I’m doing some work with MongoDB lately, and PHP has great Mongo extension – which Studio doesn’t know yet. So how do I create those stubs? Obviously, I am too lazy to manually write them. I went to look for a tool that would allow me to make one – and found none. At least not in 15 minutes I spent looking, so I decided to write my own.
What came out is the Reflector. It uses PHP reflection and PHP’s manual XML sources in order to generate stub file (see example mongo.php on git to check what comes out). Right now it’s not very smart and handles only classes/methods, not functions (probably will fix that soon), but maybe it will be useful to somebody.
Or maybe somebody points me to a tool that does that even better in comments
Update: Roy Ganor (who is leading the Zend Studio project) in comments pointed me to the source of the Studio generator script. It will generate stubs for all extensions you have, as I can see. Try it out. Thanks, Roy!
Same stupid debate as so often before. Just the topics are different from time to time. Found via the Swedish Utvbloggen, RWW, highscalability och myNoSQL.
We're about to launch a new product, and this time it's pretty client-side-intense. The application is powered by a lot of JavaScript(-mvc) and jQuery, which do xhr calls to a ZF/CouchDB powered backend. While js-mvc has unit-testing sort of covetred, I was also looking for some integration testing, multiple browsers and all that.
I can't really say if you want one or the other. Revisiting Selenium in general, it's IMHO the only viable and suitable thing for a PHP shop. Primarily of course because all those nifty test cases will integrate into our existing suite of PHPUnit/phpt tests. And while I use Zend_Test already or find projects like SimpleTest's browser or even Perl's www::mechanize very appealing, neither of those executes JavaScript like a browser.
Selenium and Saucelenium have the same root — in fact Saucelenium is a Selenium fork. While the Selenium project seems to focus on 2.x currently, stable 1.x development seems to really happen at Saucelabs. That is if you call a commit from January 22nd of this year active development.
In the process of selecting one or the other, more people recommended that I'd use the Saucelabs distribution than the original one, and so I forked it on github.
Along with a script to start the damn thing, my fork also contains a README.md. Said README covers the installation part in detail, so I won't have to repeat myself here. All of this is pretty Ubuntu-centric and has been tested on Karmic Koala. I expect things to work just as well on Lucid, or on any other distribution if you get the installation right.
One thing that took me a while to figure out was the following error message:
till@testing:/usr/src/saucelenium$ sudo ./start.sh
[...]
[config/dbus] couldn't take over org.x.config: org.freedesktop.DBus.Error.AccessDenied (Connection ":1.17" is not allowed to own the service "org.x.config.display0" due to security policies in the configuration file)
(EE) config/hal: couldn't initialise context: unknown error (null)
13:17:23.166 INFO - Writing debug logs to /var/log/selenium.log
13:17:23.166 INFO - Java: Sun Microsystems Inc. 16.0-b13
13:17:23.166 INFO - OS: Linux 2.6.32.1-rscloud amd64
13:17:23.176 INFO - v1.0.1 [exported], with Core v@VERSION@ [@REVISION@]
13:17:23.296 INFO - Version Jetty/5.1.x
13:17:23.306 INFO - Started HttpContext[/selenium-server/driver,/selenium-server/driver]
13:17:23.306 INFO - Started HttpContext[/selenium-server,/selenium-server]
13:17:23.316 INFO - Started HttpContext[/,/]
13:17:23.326 INFO - Started SocketListener on 0.0.0.0:4444
13:17:23.326 INFO - Started org.mortbay.jetty.Server@7526e85f
^C13:18:09.796 INFO - Shutting down...
After Google'ing for a bit, I came to the conclusion that the above means that I didn't have the xserver installed.
The fix was rather simple: aptitude install xserver-xorg.
The following is an example test case. It'll open http://www.php.net/ and make sure it finds "What is PHP?" somewhere on that page.
Then it will continue to /downloads.php (by clicking on that link) and will make sure it finds "Binaries for other systems" on that page.
To run this test, execute: phpunit ExampleTestCase.php.
<?php
class ExampleTestCase extends PHPUnit_Extensions_SeleniumTestCase
{
protected function setUp()
{
$this->setHost('localhost');
$this->setPort(4444);
$this->setBrowser("*chrome");
$this->setBrowserUrl("http://www.php.net/");
}
public function testPHP()
{
$this->open('/');
$this->waitForPageToLoad('30000');
$this->assertTextPresent('What is PHP?');
$this->click('//a[@href="/downloads.php"]');
$this->waitForPageToLoad('30000');
$this->assertTextPresent('Binaries for other systems');
// check this out, especially useful for debugging:
$this->assertEquals('http://www.php.net/downloads.php', $this->drivers[0]->getLocation());
}
}
Thanks for reading, and until next time.
It's time for another mtrack update; here's what's new:
Bookmark and Share this page