Solved

[Tool/PHPapp] Generating Dummy data for testing web applications?

Posted on 2004-10-24
785 Views
Last Modified: 2013-12-12
Hi everybody,

I have a difficult time finding a tool which generated dummy data for an mysql database, being used as database backend for my php application.

Idealy it would connect to my mysqlserver, I can select a database and table, and tell what kind of data each column should hold, ie: email, firstname, lastname, address, postcode, country, md5key, etc..

It will be much appreciated to find such a tool or program or php-script.

Should I add it should be winxp compatible?

Regards

-r-
0
Question by:Roonaan
    22 Comments
     
    LVL 7

    Expert Comment

    by:BenMorel
    I don't really understand your question, is what you want a database administration tool ?
    The most used for mysql is PhpMyAdmin, more info here : http://www.phpmyadmin.net/home_page/

    Regards,
    Ben
    0
     
    LVL 49

    Author Comment

    by:Roonaan
    Re BenMorel:

    What I need is to fill my database with dummy data, to test everything is working. I need 1.000+ (preferably 10.000+) dummy records to test performance and datahandling as well as the effects on certain parts of my layout when there are a lot of records in the database.

    Because when the webapp goes live, I want to know if there will be future performance problems before they occur. Or if I should build some extra elements in to improve maintainability for the webapps administrators.

    In order to do that I need a tool which generates a lot of data actually, just to fill my database.

    Regards

    -r-
    0
     
    LVL 49

    Author Comment

    by:Roonaan
    And 1000 records are a lot to manually enter, especialy when I am going to flush it when things go live anyway.

    -r-
    0
     
    LVL 48

    Expert Comment

    by:hernst42
    Why not just write a php-script that creates the data for you.
    with rnadom strings or strings from a file for surnames, firstname. As only you know the structutre of the data this script can generate it for you. I don't know any tool that can create random data without programmin it.
    for static data or same runs this mught help you http://maxq.tigris.org/
    0
     
    LVL 49

    Author Comment

    by:Roonaan
    Hernst, thanx you for replying, but having to create a random data generator able to fill all my specific fields and maintain integrity between tables will consume more of my time than I am keen on spending on it.

    There sure must be a tool available to generate such amount of dummy emailadresses for me in all possible syntaxes without me having to worry I haven't forgotten to test some format which could take my website down or break into my database (worst case scenary).

    Although you are right about me being the only one knowing the structure of my database, I am sure I am not a expert on the different kinds of inputs "webusers" will enter into my system.

    Regards

    -r-
    0
     
    LVL 48

    Expert Comment

    by:hernst42
    The problem is that you are the only one who can describe the data to be entered, as there is no program that could guess from an HTML-page where to fill username, firstname, ... This would be great, but I guess the AI is far from that away.

    If you are concered about security, never trust the input the user made. So make sure your generated SQL is injection save by escaping all necessary characters and add validation to the input.
    0
     
    LVL 49

    Author Comment

    by:Roonaan
    I am afraid you understood the question wrong hernst42.

    I need to fill the database. This could be done by a tool which connects straight to the database. It then reads out the db structure and generates thousands of records.

    I then take my webapp and look if it can handle the data.

    There is no need for the tool to have it enter the data through my html forms. It just needs to fill the database.

    Regards

    -r-
    0
     
    LVL 48

    Expert Comment

    by:hernst42
    The same applies for a database- structure. How should any application guess what to fill in for certain db-fields and get the depencies between tables. This would require AI for that programm.

    You are the only one who knows that structure and can fill in that data, either manual or by a script where you give that script the needed knowledge. I don't guess there is a solution which works on a gnereal database-strucure.

    Yeah it would be grat to have such a tool where you enter the db-access and the click on generate random data, but such a tool might only exists in years (if ever).


    0
     
    LVL 49

    Author Comment

    by:Roonaan
    Again, this is not what I need or said to be needing.

    As the original post states:
    >Idealy it would connect to my mysqlserver,
    >I can select a database and table, and
    !!> tell what kind of data each column should hold,
    >ie: email, firstname, lastname, address, postcode,
    >country, md5key, etc..

    Regards

    -r-
    0
     
    LVL 48

    Expert Comment

    by:hernst42
    hm ok that was the little part I did not see :-( . To write such a tool should be very easy and writeable in 1h. Will write such a script as soon as I'm back home.

    The problem will be with the md5key. How do you know the original alue to enter.
    0
     
    LVL 10

    Expert Comment

    by:frugle
    please post your table structure

    Mike
    0
     
    LVL 48

    Assisted Solution

    by:hernst42
    Have a look at that
     http://jojo.is-a-geek.net/~hernst/21180625.phps

    It should do what you expect. enter a pear dsn and it will retireve the table-structure. You will also be able to extend the script by your own for additional functions. You might also send me back some of the modifications you made so I can integrate them into the script and improve it.
    0
     
    LVL 49

    Author Comment

    by:Roonaan
    @frugle.

    Why is there any need to see the table structure?

    -r-
    0
     
    LVL 49

    Author Comment

    by:Roonaan
    hernst. Your script will need an DB.php.

    And although I thank you for your effort I am not quite sure if your script will provide me with al those unique possibilities, because I think it is a real expertise to know all possible weird combo's of email, street address types, postal codes, countries, etc.

    Therefor I was searching for a professional tools which is accustomed with this kind of actions and already has those unique combinations available.

    That's also one of the reasons why I didn't write the script myself.

    Regards

    -r-
    0
     
    LVL 48

    Expert Comment

    by:hernst42
    Just as note:
    DB.php should be available on every php-installation where PEAR is available.

    I never saw such a tool (neither OSS or commercial one) or any list with those possible inputs. Typical each developer writes such a tool while testing/developing an application. And as each developer does this in his own way, it would be hard to write such a tool to generate those list or use such lists.
    0
     
    LVL 49

    Author Comment

    by:Roonaan
    There are a lot of apss, but It isn't worth it at the cost of 478 dollar or more for a single license. That is why I came here, to see if someone had some nifty little tool on it shelves.

    They are usually called "Data Generators" or something similar, but non of the 30 day trials allowed me to do something with mysql.

    -r-

    0
     
    LVL 10

    Expert Comment

    by:frugle
    > Why is there any need to see the table structure?

    to generate the right type of data for each column.

    Mike
    0
     
    LVL 49

    Author Comment

    by:Roonaan
    Well, the types are given in my original post.

    -r-
    0
     
    LVL 10

    Expert Comment

    by:frugle
    oh yeah, the varchar(20) and char(32) are easy to work out. silly me.

    if $136 is not too much to spend, http://www.upscene.com/ have a database workbench

    It can generate data that looks and feels like real-life like data because it comes with a large repository of firstnames, lastnames, business names and much more.

    You can purchase the base tool + MySQL module only - it's the MSSQL+MDSE that pushes the price through the roof...

    Mike
    0
     
    LVL 3

    Assisted Solution

    by:KvdnBerg
    Don't know if this will do the trick for you but it looks like the type of thing you're looking for:
    http://www.daansystems.com/datagen/
    Cost is 25 dollars and there is a download but not sure what it does in terms of trail and such (doesn't say on the site)
    0
     
    LVL 10

    Accepted Solution

    by:
    recommend split hernst42 200 + KvdnBerg 150 + frugle 150

    all provided either scripting to perform said task or links to low-cost applications that perform said task.

    Mike
    0
     
    LVL 49

    Author Comment

    by:Roonaan
    As to abandoning this question, I'm guilty :-D.

    As to datagen. I could not get the trial to work.

    Then again 136 dollars for a project worth 700 dollars is somewhat too much of an investment wouldn't it be? I see that it is something of a "solution", but it didn't work for me.

    As to the software/scripts provided by hernst42, they do not do what I requested them to do. I shall reward him some points for trying though.

    -r-
    0

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    Highfive Gives IT Their Time Back

    Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

    Foreword (July, 2015) Since I first wrote this article, years ago, a great many more people have begun using the internet.  They are coming online from every part of the globe, learning, reading, shopping and spending money at an ever-increasing ra…
    Part of the Global Positioning System A geocode (https://developers.google.com/maps/documentation/geocoding/) is the major subset of a GPS coordinate (http://en.wikipedia.org/wiki/Global_Positioning_System), the other parts being the altitude and t…
    The viewer will learn how to look for a specific file type in a local or remote server directory using PHP.
    The viewer will learn how to create and use a small PHP class to apply a watermark to an image. This video shows the viewer the setup for the PHP watermark as well as important coding language. Continue to Part 2 to learn the core code used in creat…

    856 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    17 Experts available now in Live!

    Get 1:1 Help Now