Good question. From the documentation on runtime.onStartup:
Fired when a profile that has this extension installed first starts up.
So reloading extension should not trigger it.
Regarding the debugging - this is something I would like to know as well, because all I can think of is wrap the body of the onStartup function into: setTimeout(() => { /* your handling code */ }, 9000)
and then register the breakpoint in 9 seconds
Also you will need to start your browser with your extension installed, for that you should be able to use web-ext tool.