Hey I looked for this too, googled and found this thread.
There is nothing, so I wrote a quick and dirty shell scripts. It's very unixey, but gets the job done.
Basically, you kick it off from a terminal when you unplug your laptop from full charge.
The script runs, and increments a counter every minute in a file.
When you close the lid, and the laptop is sleeping, obviously the script pauses. When you open the lid again, it resumes, and continues incrementing the counter.
When the laptop battery goes dead, stop the script and check your counter.
This is how many minutes you ran on battery power.
Gotchas: You can't turn OFF the laptop while this is running, it will kill the script. You can only close the lid to sleep or hybernate.
You can't plug it back in.. when you do it will invalidate the testing results.
So you need to unplug, kick off the script, and not plug it back in until the battery is dead. You CAN close the lid and sleep or hybernate though.
(I did say quick and DIRTY right..??)
Anyway.. I'm gonna run it a few power cycles to see what the best settings for coolbook are...
Put this in the root of your home directory with your favorite text editor and run it from your terminal window like this. Then minimize the window.
ksh /Users/<yourid>/batterytimer.ksh
<the above will run in your terminal windows, don't close the window>
<Or if you wish to close the window and still have the script running in the background you can do the below>
chmod +x /Users/<yourid>/batterytimer.ksh
nohup /Users/<yourid>/batterytimer.ksh &
After your battery dies, plug it back in and close the terminal window to stop the counter (if you used first option)
Or kill the script (if you used second "nohup" option)
To view results after you stopped the script:
cat /tmp/batterytimer.txt
<this gives you battery usage total time in minutes>
------- Begin Script
#!/bin/ksh
i=1
while :
do
sleep 60
echo "$i" > /tmp/batterytimer.txt
let i=i+1
done